Lista

6 respostas
S

Boas, eu quero criar uma lista parametrizada com Integer´s e depois mostra-la na consola fiz um programa e está dando erro ao fazer add, se alguém pudesse ajudar.

import java.util.*;

public class ToEndOfList {


	public void listar(List<Integer> li){
		li.add(2);
		li.add(new Integer(7));
		li.add(new Integer(1));
		li.add(new Integer(2));
		li.add(new Integer(4));
		li.add(new Integer(5));
	}



	public void show(List<Integer> li){

		ListIterator lit =  li.listIterator();

		while (lit.hasNext()){
			Object curr = lit.next();
			System.out.println(curr);		
		}

	}
package ExPascoa;

import java.util.*;

public class TesteToEndOfList {

	
	public static void main(String[] args) {
		

		ToEndOfList teol = new ToEndOfList();
		List <Integer> li = null ;
		teol.listar(li);
		teol.show(li);
			
	}

}

obrigado

6 Respostas

marcelo_mococa

o erro ta aqui…

li.add(2);

a sua lista esta parametrizada para receber objetos Integer, naum tipo primitivos int.

C

marcelo_mococa:
o erro ta aqui…

li.add(2);

a sua lista esta parametrizada para receber objetos Integer, naum tipo primitivos int.

Como ele está usando java 5, automaticamente os tipos primitivos são convertidos em wrappers, ou seja, este trecho tá certo. O que está errado é que ele está passando a lista nula, portanto está lançando uma NullPointerException no primeiro add.

S

nop, pk o compilador tranformao o 2 no objecto Integer, por isso tanto faz pôr o li.add(2); ou li.add(Integer(2));

S

Como eu resolvo isso da lista nula ?

C

List <Integer> li = new ArrayList();

S

obrigado :slight_smile:

Criado 15 de abril de 2006
Ultima resposta 15 de abr. de 2006
Respostas 6
Participantes 3