Dúvidas com ArrayList // .indexOf // .lastIndexOf [RESOLVIDO]

Bom dia a todos,

Apesar de ser meu primeiro post, navego bastante neste fórum. Como não achei nada que sane minha dúvida, pergunto:

To aprendendo Collections lá na facul e estou tentando colocar todo conteúdo de uma ArrayList e colocar numa String. Porém não to conseguindo usar o lastIndexOf e o indexOf. Olha só:

public static String exibirNomes(ArrayList lista){
	String nomes = new String("");
	while(nomes.lastIndexOf(lista)){ //não sei se ta certo
		nomes += lista.indexOf() + "\n"; //não sei se ta certo
	}
	return nomes;
}

Como consigo usar esses métodos para correr no ArrayList?

Desde já agradeço! :lol:

Esse métodos são para descobrir o índice de um elemento dentro do list. Para percorrer o array, use os métodos get() e size() ou o for each:

public static String exibirNomes(List<String> lista){ String nomes = new StringBuilder(); for (String nome : lista) { nomes.append(nome); } return nomes.toString(); }

public static String exibirNomes(List<String> lista){ String nomes = new StringBuilder(); int i = 0; while (i < lista.size()) { String nome = lista.get(i); nomes.append(nome); i++; } return nomes.toString(); }

seja bem vindo Cornelius.

primeiro: recomendo que leia a api de Collection.

segundo:; você precisa utilizar esses métodos? a lógica está errada.

[code]public static String exibirNomes(ArrayList lista) {
String nomes = new String("");

while(nomes.lastIndexOf(lista)) { // não se pode passar uma lista como parâmetro para esse método
    nomes += lista.indexOf() + "\n"; // você precisa passar um parâmetro para esse método
}   
return nomes;   

}[/code]
tua lista é de String? tente assim:

[code]public static String exibirNomes(List lista) {
String nomes = “”;

for (int i = 0; i < lista.size(); i++) {
    nomes += lista.get(i) + "\n";
}
return nomes;

}[/code]

[edit]disse que ArrayList não possui o método indexOf(), mas me confundi na hora de escrever. ele existe sim. leia a api[/edit]

Blz… não pensei que existia uma solucão tão simples como vocês me informaram. Muito obrigado senhores! :wink: