Arrays sem saber qual o tamanho e metodos getters e setters

8 respostas
E

Pessoal estou com o seguinte trabalho pra fazer:

Você foi contratado para desenvolver 1 programa para realizar 1 pesquisa em 1 cidade.
A pesquisa consiste em saber a faixa salarial, mensal dos habitantes da cidade.
A cada habitante informado, o programa deve perguntar se vc deseja informar os dados de 1 outro habitante, deve ser digitado o numero 1, caso deseje informar os dados de 1 novo habitante, ou zero(0) caso não queira informar mais nem1 dado. Ao escolher que não deseja mais informar os dados de outro habitante, o sistema deve imprimir as seguintes informações:

  1. A medida salarial dos habitantes ouvidos.
  2. O percentual de homens ouvidos.
  3. O percentual de mulheres ouvidas.
  4. O percentual de mulheres que possuem salário< ou = a 300,00.

Obs 1: O programa deve tratar o erro caso o sexo informado seja diferente de masculino ou feminino.
Obs2: Deve ser utilizado os conceitos de MVC.
Obs3: Deve ser utilizado encapsulamento.

Estou aprendendo java agora, esse mesmo programa em programação estruturada vai d boa…mas pragramação Orientada a Objeto no casoo java nao sei como criar vetorer, que em java é arrays e nem alocalos dinamicamentes…pois nesse caso eu naum sei o tamanho do vetor…
Meu professor quer que a gente utiliza as classes DTO DAO e VIEW, no caso as variavéis e os metodos getters e setters para acessar essas variaveis vai tah na classe DTO.

teria como alguem me dar um explicada como trabalhar com arrays, dentro do mesmo metodo, em metodos diferentes soh que na mesma classe, e em classes diferentes. e utlizando os metodos getters e setters e encapsulados.
e dpois como alocalos dinamicamente.

Não quero que vcs fazem o trabalho pra mim…apenas tirem essas duvidas minha…que o resto me viro.
Bem descupem a minha burrice…mas sou novato em Orientação a Objetos e Java.

8 Respostas

TeiTei

Array sem saber o tamanho é o nosso querido amigo ArrayList e metodos gets e sets são relacionados aos nosso velhos e bons beans…tratamento de erros use try catch

G

Para o encapsulamento de ArrayList, uma idéia é criar 3 métodos: um para adicionar elementos, um para remover, e outro para percorrer.

private List<Habitante> habitantes = new ArrayList<Habitante>();

public void addHabitante(Habitante habitante) {
   if(!habitantes.contains(habitante)) {
      habitantes.add(habitante);
   }
}

public void delHabitante(Habitante habitante) {
   if(habitantes.contains(habitante)) {
      habitantes.remove(habitante);
   }
}

public Iterator getHabitantes() {
   return habitantes.iterator();
}
E

Olá, valeu por tentar me ajudar…mas array naum idendo nada, gostaria que vcs me explicassem com detalhes como utilizar arrays e a tao ArrayList como vc citou, mas eu preciso que as variaveis e os metodos getters e setters ficam dentro de uma classe separada…que no casso vai ser a classe DTO, tive veno na net mas naum consegui intenter como trabalhar com arrays em classes separadas e utilizando metodos getter e setters

T

De modo geral, evite usar arrays “puros” porque eles são mais difíceis de lidar que o ArrayList (não há um “redim” como no VB que permita alterar o tamanho de um array, por exemplo).
A única desvantagem do ArrayList é que a sintaxe é um pouco desajeitada (em vez de usar colchetes [ ] você tem de usar “put” ou “get”).

T

Ler a documentação ajuda um pouquinho, não:

http://java.sun.com/javase/6/docs/api/java/util/ArrayList.html

(Se tiver problemas, tente usar o tradutor do Google. Não vai sair um resultado muito bonito, mas dá para o gasto).

TeiTei

Seguinte com relação a classe separada que vc disse ai a DTO seria os famosos beans por exemplo, vou concluir um bean de uma Pessoa.

Como sabemos pessoas tem nome, idade, sexo e so isso ja basta…kkk…então vamos la.

public class Pessoa{


//Aqui são os atributos encare como caracteristicas de uma pessoa.
private String nome;
private int idade;
private String sexo;

//Como eles são de acesso private devem conter metodos de 
//acesso pois qualquer classe que instanciar ou herdar essa classe
//não terão acesso a estes atributos pois private so pode ser acessado na mesma classe



//Metodos de acesso os gets e sets para cada atributo
public String getNome(){
return nome;
}

public int getIdade(){
return idade;
}

public String getSexo(){
return sexo;
}

public void setNome(String nome){
this.nome=nome;
}

public void setIdade(int idade){
this.idade=idade;
}

public void setSexo(String sexo){
this.sexo=sexo;
}

}

Depois que vc criar sua classes vc ira criar estancia desse bean ex:

.
.
.
//Aqui vc cria o seu objeto do tipo pessoa
Pessoa meuObjetoPessoa = new Pessoa();

//Aqui vc seta todos os seus atributos atraves dos metodos criados no bean
meuObjetoPessoa.setNome("Antonio Antonino");
meuObjetoPessoa.setIdade(25);
meuObjetoPessoa.seSexo("Masculino");

//Aqui vc cria o seu ArrayList e informa que ele so pode receber objetos do tipo Pessoa
ArrayList<Pessoa> meuArray = new ArrayList<Pessoa>();

//Aqui vc adiciona o seu objeto dentro do seu ArrayList
meuArray.add(meuObjetoPessoa);

.
.
.

Espero ter ajudado

E

TeiTei:
Seguinte com relação a classe separada que vc disse ai a DTO seria os famosos beans por exemplo, vou concluir um bean de uma Pessoa.

Como sabemos pessoas tem nome, idade, sexo e so isso ja basta…kkk…então vamos la.

public class Pessoa{


//Aqui são os atributos encare como caracteristicas de uma pessoa.
private String nome;
private int idade;
private String sexo;

//Como eles são de acesso private devem conter metodos de 
//acesso pois qualquer classe que instanciar ou herdar essa classe
//não terão acesso a estes atributos pois private so pode ser acessado na mesma classe



//Metodos de acesso os gets e sets para cada atributo
public String getNome(){
return nome;
}

public int getIdade(){
return idade;
}

public String getSexo(){
return sexo;
}

public void setNome(String nome){
this.nome=nome;
}

public void setIdade(int idade){
this.idade=idade;
}

public void setSexo(String sexo){
this.sexo=sexo;
}

}

Depois que vc criar sua classes vc ira criar estancia desse bean ex:

.
.
.
//Aqui vc cria o seu objeto do tipo pessoa
Pessoa meuObjetoPessoa = new Pessoa();

//Aqui vc seta todos os seus atributos atraves dos metodos criados no bean
meuObjetoPessoa.setNome("Antonio Antonino");
meuObjetoPessoa.setIdade(25);
meuObjetoPessoa.seSexo("Masculino");

//Aqui vc cria o seu ArrayList e informa que ele so pode receber objetos do tipo Pessoa
ArrayList<Pessoa> meuArray = new ArrayList<Pessoa>();

//Aqui vc adiciona o seu objeto dentro do seu ArrayList
meuArray.add(meuObjetoPessoa);

.
.
.

Espero ter ajudado

ah…ja tava me esquecendo…pra dpois pra eu acessar todos os registros do arraylist, que nem, pra mostrar na tela, fazer a média dos resultados. como que eu faço.

Vou tentar implementar usando as dicas q vc passou…vou pra facul anoite, e a hora q eu chegar vou tentar…dpois posto os resultados…

o professor tah meio mala…ele deu uma explicada mei por alto, e tah enfiando trabalhos com materias q ele naum deu, ele tah fazendo isso pra gente correr atras, ae se ele sente uma dificuldade nos alunos ele tah uma explicada no que a gente tah com dificuldade…mas tah bom…em uma semana aprendi ateh bastante coisa…rsrs

e obrigado pela ajuda

E

up :smiley:

Criado 2 de junho de 2008
Ultima resposta 2 de jun. de 2008
Respostas 8
Participantes 4