Problema com List<T>

5 respostas
UpTheIrons

Olá pessoal,

Tenho participado muito do fórum com bastante dúvidas, espero logo em breve
estar ajudando tb.

Mas vamos lá.
Tenho uma Entidade A q tem uma List de B e ao tentar inserir itens na lista, dá pau.
Vi q n posso instancia-la, mas n consegui usa-la a n ser qdo passo como valor
uma query, mas aí é outro caso.

Aqui é algo assim:
List<B> minhaLista;

minhaLista.add(B); //aqui n funciona.

O q estou fazendo errado?

5 Respostas

Lavieri

vc precisa instanciar a lista com algum classe q implementa lista... por exemplo

List<B> minhaLista = new ArrayList<B>();

minhaLista.add(B); //agora funciona

vc não pode usar uma variável sem instanciar, ou o compilador não deixa vc fazer, ou então vai dar NullPointerException

victorwss

Dois erros.

  1. Você não inicializou a variável minhaLista.
  2. B é o nome de uma classe. Logo minhaLista.add(B) não vai compilar.
    Tente isso:B objeto = ...; B outroObjeto = ...; List<B> minhaLista = new LinkedList<B>(); minhaLista.add(objeto); minhaLista.add(outroObjeto);
UpTheIrons

Sim, eu tinha inicializado no início da classe, é q n exibi, foi mal…

List minhaLista;

Mas o q é diferente pra mim (em java) é q eu n estava conseguindo
instancia-la, como "List minhaLista = new List();

Eu inclusive tinha testado com o LinkedList, mas achei q n estava
fazendo a coisa certa.

Deixa eu tentar novamente então.

victorwss

UpTheIrons:
Sim, eu tinha inicializado no início da classe, é q n exibi, foi mal…

List minhaLista;

Mas o q é diferente pra mim (em java) é q eu n estava conseguindo
instancia-la, como "List minhaLista = new List();

Eu inclusive tinha testado com o LinkedList, mas achei q n estava
fazendo a coisa certa.

Deixa eu tentar novamente então.

List é uma interface. Você não pode instanciar uma interface.
Normalmente instancia-se LinkedList ou ArrayList. Há outras coisas que implementam List por aí, mas LinkedList e ArrayList são os mais comuns.

UpTheIrons

Lavieri e Victor,

Valeu a ajuda, tá tudo certinho por aqui!

Falew!

Criado 31 de janeiro de 2009
Ultima resposta 31 de jan. de 2009
Respostas 5
Participantes 3