Olá pessoal,
Somente para matar a curiosidade… Como se faz um vetor de ArrayList<>?
Pensei que a sintaxe poderia ser como a seguir, mas não funciona:
ArrayList[] v= new ArrayList[20];
Gostaria de saber se é possível fazer algo deste tipo.
Att.
Olá pessoal,
Somente para matar a curiosidade… Como se faz um vetor de ArrayList<>?
Pensei que a sintaxe poderia ser como a seguir, mas não funciona:
ArrayList[] v= new ArrayList[20];
Gostaria de saber se é possível fazer algo deste tipo.
Att.
[quote=Adelar]Olá pessoal,
Somente para matar a curiosidade… Como se faz um vetor de ArrayList<>?
Pensei que a sintaxe poderia ser como a seguir, mas não funciona:
ArrayList[] v= new ArrayList[20];
Gostaria de saber se é possível fazer algo deste tipo.
Att.[/quote]
Não pode.
Entretando, um ArrayList de ArrayList pode:
ArrayList<ArrayList<Integer>> a = new ArrayList<ArrayList<Integer>>();
[]´s
Na verdade pode, o que não pode é usar genéricos…
Isso aqui funciona:
[code]ArrayList[] a = new ArrayList[20];
for ( int i = 0; i < a.length; i++ ) {
a[i] = new ArrayList();
}[/code]
[]´s
[code]
import java.util.ArrayList;
public class ExemploArrayList{
public static void main(String[] args){
// cria uma ArrayList que conterá inteiros
ArrayList valores = new ArrayList();
// adiciona itens na lista
valores.add(34);
valores.add(12);
valores.add(8);
valores.add(23);
// exibe os valores da lista
for(int i = 0; i < valores.size(); i++)
System.out.println(valores.get(i));
System.exit(0);
}
}[/code]
asssim funciona…
vc estava colocando os valores dentro [] ao inves de ser dentro do ()
abçssss
Existe um workaround feio:
ArrayList<Integer>[] myarr = (ArrayList<Integer>[]) Array.newInstance(ArrayList.class, 20);
Mas realmente não é recomendado. Use Lists de Lists como o David mostrou.
E outra coisa. Sempre declare listas a partir da interface:
List<Integer> lista = new ArrayList<Integer>();
Ao invés de:
ArrayList<Integer> lista = new ArrayList<Integer>();
[quote=ViniGodoy]Existe um workaround feio:
ArrayList<Integer>[] myarr = (ArrayList<Integer>[]) Array.newInstance(ArrayList.class, 20);
[/code][/quote]
Nossa da onde você tirou essa gambi vinny?
Valeu pessoal, bom saber que é possível… mas vou sair longe de código deste tipo hehehe
Att.
Olá,
estou com um problema parecido:
estou usando um ArrayList dentro de um vetor, para declarar acredito que está tudo ok, o problema está na hr de inserir dentro do arraylist que está dentro do vetor, segue o código:
int tamanho = jTextArea1.getLineCount();
String vetor[] = jTextArea1.getText().split("\n");
ArrayList[] hash = new ArrayList[20];
int x1,x2,x3,pos;
for (int j = 0; j < tamanho; j++) {
x1 = vetor[j].charAt(0);
x2 = vetor[j].charAt(1);
x3 = vetor[j].charAt(2);
pos = ((x1 + x2 + x3) % 20);
hash[pos].add(vetor[j]);
}
está dando o seguinte erro: NullPointerException
Alguém pode me ajudar?
Obrigada