sortowanie/usunięcie wpisu z samemu zrobionej listy jednokierunkowej

0

Witam!
Mam za zadanie stworzyć bazę danych za pomocą listy jednokierunkowej, którą sam napiszę. Baza ma posiadać funkcję dodawania rekordów, wyszukiwanie, sortowanie (bez przechodzenia na etap przepisywania) i usuwanie pojedynczych wpisów (wyszukiwanie i sortowanie ma się odbywać z użyciem interfejsu Comparable). Mam problem z dwoma ostatnimi rzeczami. przy usuwaniu próbowałem zrobić tak, żeby dana wartość elementu listy była zmieniana na null, ale wyskakiwał mi NullPointerException. Potem myślałem, że może zmienić dany element następnym, a następny jeszcze następnym itd., ale chyba nie wiem jak to zrobić dobrze (tak, to jest ta ostatnia nieudolnie napisana metoda w klasie) :D Mógłby mnie ktoś nakierować jak to zrobić? Jeśli chodzi o sortowanie, to jedynym wyjściem jest Collections.sort?

http://pastebin.com/ufsS5zqj

0

Ale czego nie rozumiesz w usuwaniu?

user image

Usuwajac 2 element zmieniasz wskaznik 1 elementu tak aby wskazywal na 3 i tyle.

0
Swr napisał(a):

Ale czego nie rozumiesz w usuwaniu?
Usuwajac 2 element zmieniasz wskaznik 1 elementu tak aby wskazywal na 3 i tyle.

tego jak to napisać xD bo rozumiem o co chodzi, ale nie potrafię usunąć całego obiektu, tylko obie zmienne, które ten obiekt przechowuje, ale jak to zrobię i wyświetlę listę, to pokazuje dalej ten wpis, tylko, że z wartościami "null" w obu miejscach

0

Nie wiem jakim cudem masz nulla skoro kod ktory wrzuciles sie w ogole nie kompiluje. Nie uzywasz zadnego IDE?

0
Swr napisał(a):

Nie wiem jakim cudem masz nulla skoro kod ktory wrzuciles sie w ogole nie kompiluje. Nie uzywasz zadnego IDE?

bo wrzuciłem tylko klasę z listą. mam jeszcze 3 klasy, ale one nie za wiele mają wspólnego z działaniem listy (no chyba, że poleceniaDoListy)

http://pastebin.com/ikRq2p6U
http://pastebin.com/YuqH6cKT
http://pastebin.com/0DNKycXD

chociaż nie wiem czy on się skompiluje, bo nie wiem w jakim stanie go zostawiłem xD

0

Tyle, ze bledy ma juz ta pierwsza klasa :> I to skladniowe nawet.

BTW. nazwy klas z duzej

0

jakie błędy masz na myśli? nie zauważam żadnych, poza metodami związanymi z usunięciem jednego rekordu (one są całkowicie źle, bo program się wyłącza jak ich używam)

będę pamiętał na drugi raz! :)

0

**szukajPoImionach **i **usunWpis ** sie nie kompiluja.

0
Swr napisał(a):

**szukajPoImionach **i **usunWpis ** sie nie kompiluja.

aaaa bo zmieniłem chyba chyba klasę listaDowodowOsobistych
wstyd mi teraz, przysięgam
http://pastebin.com/7jBDFHXx tak teraz wygląda u mnie ta klasa

0

Możesz używać angielskich nazw?

0
scibi92 napisał(a):

Możesz używać angielskich nazw?

tak

0

wyczuwam projekt do zaliczenia laborek ... :D

0
Krzywy Pomidor napisał(a):

wyczuwam projekt do zaliczenia laborek ... :D

tak xD myślę, że nie robię nic złego prosząc o pomoc, bo z tego co przegladałem, to niektórzy proszą o zrobienie wszystkiego za nich

1

Przecież to Java. Wystarczy że przeniesiesz wskaźnik na kolejny element a garbage collector sam usunie niepotrzebny wpis.

0

Z tego co widze to wyszukiwanie elementów tez jest do du.. bo program wyświetla tylko pierwszy wpis o odpowiednich danych... Ale sam nie wiem za dobrze jak to zrobić...

0
caer napisał(a):

Przecież to Java. Wystarczy że przeniesiesz wskaźnik na kolejny element a garbage collector sam usunie niepotrzebny wpis.

wiem, że zabrzmię jak laik, ale na prawdę nie wiem jak to zrobić

0

typ gada głupoty, w Javie nie ma wskaźników, są referencje

0
Zimny Kaczor napisał(a):

typ gada głupoty, w Javie nie ma wskaźników, są referencje

i tak nie wiem jak to zrobić xD

0
Ponętny Pączuś napisał(a):

Z tego co widze to wyszukiwanie elementów tez jest do du.. bo program wyświetla tylko pierwszy wpis o odpowiednich danych... Ale sam nie wiem za dobrze jak to zrobić...

To proste. Wystarczyło zmienić te metody tak, żeby niczego nie zwracały, dalej były rekurencyjne i wyświetlały każdy rekord, który ma takie samo nazwisko/imiona jak podane. Btw. dzięki, że to zauważyłeś xD

1 użytkowników online, w tym zalogowanych: 0, gości: 1