Sou iniciante em java, pois gostaria de saber como adicionar dados no ArrayList utilizando um laço de repetição e que o usuário insira os dados através de uma interação?
Ex.:
List teste = new ArrayList();
for(int i=0; i<teste.size(); i++){
}
Dentro do for não estava conseguindo colocar a interação para armazenar os dados no ArrayLis.
public static void main(String[] args){
List<String> teste = new ArrayList<String>();
String[] nome = new String[2];
int i;
for(i=0; i<teste.size(); i++){
nome[i] = JOptionPane.showInputDialog("Nome");
teste.add(nome[i]);
}
}
antes do for, qual é o tamanho da lista (teste.size())?
nesse momento não há nada dentro da lista… logo o tamanho dela é 0, então o for vai ficar assim:
for(i=0; i<0; i++)
logo, o teste do for (i <0) vai retornar false na primeira tentativa de loop…
se você pretende estabelecer um tamanho máximo para a lista, coloque este valor no for, substituindo teste.size():
for(i = 0; i <2; i++) // caso tenha apenas 2 posições a sua lista
também daria para substituir o teste.size() do for por um nome.length, que pegaria o tamanho do vetor de strings (esse vetor foi prédefinido anteriormente)
mas vale ressaltar que é interessante usar um vetor comum caso você defina o número de inserções… listas encadeadas são interessantes quando não se tem um tamanho definido
Pessoal, na verdade o que estou pretendendo fazer é uma agenda contendo apenas o nome, e-mail e telefone. Mas não estou conseguindo declara os atributos da classe Pessoa como vetor e instanciá-las na classe Agenda que contém o main. As classes seria essas:
public class Pessoa{
//Contendo os atributos e médotos, sendo com vetor