Я реализовал свой собственный отдельный список, но у меня проблемы с удалением повторяющихся элементов, которые у меня есть в моем списке. Здесь моя реализация:
List.java:
public class List {
private Element first;
private int size;
public void removeRepetitive()
{
Element e1 = first;
Element e2 = e1.getNext();
while(e1.getNext() != null && e2.getNext() != null)
{
while(e2.getNext() != null)
{
if(e1.getCard().equals(e2.getCard()))
{
remove(e2.getCard());
}
e2 = e2.getNext();
}
e1 = e1.getNext();
e2 = e1.getNext();
}
}
}
Element.java:
package lists;
public class Element {
private Karta karta;
private Element next;
public Element(Karta k)
{
karta = k;
next = null;
}
public Element(Karta k, Element e)
{
karta = k;
next = e;
}
public Karta getCard()
{
return karta;
}
public Element getNext()
{
return next;
}
public void setNext(Element e)
{
next = e;
}
public void setCard(Karta k)
{
karta = k;
}
Мне удалось написать простой метод удаления, но я продолжаю сталкиваться с NullPointerException в этом примере. Я пробовал все, это последняя версия моего метода. Может ли кто-нибудь помочь мне или хотя бы объяснить, как это должно быть сделано?
NPE происходит, когда вы пытаетесь запустить getNext на удаленном узле.