Pessoal, eu tenho uma classe que tem três atributos(nome, media, email)
eu quero add esses atributos em umarray list. vejam se eu fiz certo.
//Instancia da Classe.
Classe_Cadastro cc = new Classe_Cadastro(nome, media, email);
List<Classe_Cadastro> st = new ArrayList(); //Cria o array do tipo //Classe_Cadastro.
st.add(cc);
for (int i = 0; i < st.size(); i++) {//Exibe o array
out.println(st.get(i));
Cara, oq tu fez, foi jogar o objeto “cc” dentro da lista.
Dps, no seu for, vc percorre a lista, e pega o primeiro e unico item, e da um print na tela do objeto.
Só atenção para o padrão de nomenclatura e troque Classe_Cadastro para ClasseCadastro e atenção para no java 6 o tipo da coleção vai na Referência e na instancia.
//Instancia da Classe.
Classe_Cadastro cc = new Classe_Cadastro(nome, media, email);
List<Classe_Cadastro> st = new ArrayList<Classe_Cadastro>() // acerte isso; //Cria o array do tipo //Classe_Cadastro.
st.add(cc);
for (int i = 0; i < st.size(); i++) {//Exibe o array
out.println(st.get(i));
[quote=felipevs]Ele não reconhece o nome no exemplo que ele deu em cima.
out.println(st.get(i).nome);
Troque st.get(i).nome por st.get(i).getNome().
Entenda o seguinte, quando realiza o get(i) você tem em mãos o objeto contido na lista, nesse caso, a sua classe.
Diante disso, podes fazer qualquer manipulação, ou se preferir para ficar mais claro, algo do tipo:
Desulpe, mas veja… o código é esse… mas tem ate um probleminha… quando eu clico no botão cadastrar ele ta para add no array … mas tbm ta pra instancia a classe e criar o array…e isso nao pode acontecer … então alguém tem alguma idéia como posso fazer isso ?
se possivel alguem complete a parte do código onde devo resgatar e exibir os valores do array =X
try{
//Iniciar o cadastro.
String iniciarCadastro = String.valueOf(request.getParameter("bCadastrar"));
if (iniciarCadastro.equalsIgnoreCase("Cadastrar")) {
//Tribuindo valores as variáveis (recebendo os valores do formulário).
String nome = String.valueOf(request.getParameter("nome"));
String email = String.valueOf(request.getParameter("email"));
double nota_1 = Double.parseDouble(request.getParameter("nota1"));
double nota_2 = Double.parseDouble(request.getParameter("nota2"));
double nota_3 = Double.parseDouble(request.getParameter("nota3"));
double media = (nota_1 + nota_2 + nota_3) / 3; // Calcula a média.
// Cria o ArrayList do tipo cadastro.
List<ClasseCadastro> arrayCad = new ArrayList();
ClasseCadastro clasCad = new ClasseCadastro(nome, media, email);//Instancia da classe
arrayCad.add(clasCad);
%> <center><font color="green"> Cadastrado com sucesso.. </font> </center> <%
for(int i = 0; i < 5; i++){
out.println(arrayCad.get(i).getNome());
}
}
}
}catch(Exception a){
%> <center><font color="red"> Não foi possível efetuar o cadastro. </font> </center> <%
}
//As variáveis recebe o valor do form e calcula a média.
String iniciarCadastro = String.valueOf(request.getParameter("bCadastrar"));
if (iniciarCadastro.equalsIgnoreCase("Cadastrar")) {
//Tribuindo valores as variáveis (recebendo os valores do formulário).
nome = String.valueOf(request.getParameter("nome"));
email = String.valueOf(request.getParameter("email"));
nota_1 = Double.parseDouble(request.getParameter("nota1"));
nota_2 = Double.parseDouble(request.getParameter("nota2"));
nota_3 = Double.parseDouble(request.getParameter("nota3"));
media = (nota_1 + nota_2 + nota_3) / 3; // Calcula a média.
}
List<ClasseCadastro> arrayCad = new ArrayList();
ClasseCadastro clasCad = new ClasseCadastro(nome, media, email);//Instancia da classe
try {
if (iniciarCadastro.equalsIgnoreCase("Cadastrar")) {
//Add
arrayCad.add(clasCad);
%> <center><font color="green"> Cadastrado com sucesso.. </font> </center> <%
}
} catch (Exception a) {
%> <center><font color="red"> Não foi possível efetuar o cadastro. </font> </center> <% }
String exibirCadastro = String.valueOf(request.getParameter("bListagem"));
if (exibirCadastro.equalsIgnoreCase("Listar")) {
for (int i = 0; i < arrayCad.size(); i++) {
out.println(arrayCad.get(i).getNome());
}
%>