Forum » Programiranje » [Java] Seznami
[Java] Seznami
messi ::
Hočem narediti seznam, kjer bom shranjeval različne stvari v seznamu, ko seznam skreram pa dejansko obstajajo 4 elementi ampak vrednosti null. Zakaj nul pa ne vem. Delam na seznamu brez slepega element.
Če kdo vidi težavo kje je in zakaj je nak na koncu 3tjega dodajanja enak seznamu 3 vrednosti null ne vem..
Če kdo vidi težavo kje je in zakaj je nak na koncu 3tjega dodajanja enak seznamu 3 vrednosti null ne vem..
Nakup<String> nak=new Nakup<>(); nak.dodajVseznam("jabolko"); nak.dodajVseznam("hruška"); nak.dodajVseznam("opica");
public class Nakup<E>( protected class Sez<E> { E value; Sez<E> next; public Sez(E value, Sez<E> next) { this.value = value; this.next = next; } public Sez() { } }; protected int size = 0; protected Sez<E> first; public boolean dodajVSeznam(E e) { if (first == null) { Sez<E> nov = new Sez<E>(e, null); first = nov; size++; return true; } else if (!obstaja(e)) { Sez<E> nov = new Sez<E>(e, null); nov.next = first; first = nov; size++; return true; } else { return false; } ) @Override public boolean obstaja(Object o) { Clen<E> pom = first.next; while (pom != null && !pom.value.equals(o)) { pom = pom.next; } return pom != null; }
Spura ::
V tej kodi ni nicesar takega, da bi imel tri objekte Sez z null vrednostjo value. Je pa funkcija obstaja napacna (kaj je sploh class Clen?) pa tudi sicer je stvar nerodno napisana.
Spura ::
obstaja zacne iskat pri drugem elementu v verigi.
Tudi sicer bi bilo lazje funkcijo definirat na classu Sez samem v rekurzivnem smislu. Public prazen konstruktor je odvec. Bolje bi bilo, ce bi funkcija obstaja imela argument tipa E ne pa Object.
Oziroma ne poznas operatorja ? :
Tudi sicer bi bilo lazje funkcijo definirat na classu Sez samem v rekurzivnem smislu. Public prazen konstruktor je odvec. Bolje bi bilo, ce bi funkcija obstaja imela argument tipa E ne pa Object.
protected class Sez<E> { private E value; private Sez<E> next; public Sez(E value, Sez<E> next) { this.value = value; this.next = next; } public boolean obstaja(E value) { return this.value.equals(value) || (next == null ? false : next.obstaja(value)); } }
Oziroma ne poznas operatorja ? :
return this.value.equals(value) || (next == null ? false : next.obstaja(value)); je if (next == null) { return this.value.equals(value); } else { return this.value.equals(value) || next.obstaja(value); }
Zgodovina sprememb…
- spremenil: Spura ()
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | python-rabim pomočOddelek: Programiranje | 2773 (1003) | rnla1973 |
» | Naloga iz Putka - UPMOddelek: Programiranje | 2215 (1551) | NejcSSD |
» | [C] kazalčni seznamOddelek: Programiranje | 3071 (2885) | MrBrdo |
» | [java] funkcija ekvivalentna print_r v PHPOddelek: Programiranje | 1667 (1430) | sverde21 |
» | tomcat - problem z encodingomOddelek: Programiranje | 2345 (2259) | kopernik |