Ciao a tutti

Devo scrivere un programmino che stampa gli elementi di una collezione(in questo caso una LinkedList di numeri interi) che non sono presenti in un altra collezione(sempre una LinkedList di numeri interi) e senza ripetizioni.

Ho abbozzato qualcosa ma il programma mi stampa a video una ripetizione del primo numero.

codice:
//Altro codice
                LinkedList<Integer> lista = new LinkedList<Integer>();
		LinkedList<Integer> lista2 = new LinkedList<Integer>();
		LinkedList<Integer> listar = new LinkedList<Integer>();

                Iterator<Integer> itl = lista.iterator();
		Iterator<Integer> itl2 = lista2.iterator();
		while(itl.hasNext()){
			int n = itl.next();
			while(itl2.hasNext()){
				int n2 = itl2.next();
				if(n2==n) continue;
				listar.add(n);
			}
					
					
				
			}
		        System.out.println(lista.toString());
		 	System.out.println(lista2.toString());
			System.out.println(listar.toString());
			
		}
quello che stampa a video è questo

codice:
[3, 4, 5, 3, 2, 1, 5, 5, 9, 8, 3, 2, 4, 7, 7, 9, 9, 23, 34, 55, 99, 100]
[2, 3, 5, 4, 4, 6, 8, 8, 7, 9, 9, 0, 1, 2, 4, 3, 9]
[3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3]
Il risultato dovrebbe essere:
[23, 34, 55, 99, 100]

Qualcuno mi aiuta?