|
||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||
java.lang.Objectdemo.LinkitettyLista<TYPE>
TYPE - Tyyppi jota lista tallettaapublic class LinkitettyLista<TYPE>
Yleinen linkitetty lista jolla voi tallentaa mitä tahansa alioita.
| Nested Class Summary | |
|---|---|
private class |
LinkitettyLista.LinkitettyListaIterator
Iteraattorin implementointi. |
private static class |
LinkitettyLista.ListanAlkio<TYPE>
|
| Field Summary | |
|---|---|
private LinkitettyLista.ListanAlkio<TYPE> |
ensimmainen
|
protected int |
muutostenMaara
Laskuri listaan tehtyjen muutosmäärälle. |
private LinkitettyLista.ListanAlkio<TYPE> |
viimeinen
|
| Constructor Summary | |
|---|---|
LinkitettyLista()
|
|
| Method Summary | |
|---|---|
java.util.Iterator<TYPE> |
iterator()
Palautetaan iteraattori listaan |
void |
kaanna()
Käännetään lista toisin päin Yksi yksinkertainen idea: tehdään apulista ja listan alusta siiretään aina alkio kerrallaan apulistan alkuun: 1) Otetaan osoitin listan alkuun 2) apuosoittimet eka ja vika uuteen listaan 3) otetaan osoittimen kohdasta ensimmäinen pois ja li- sätään se uuden listan alkuun 4) toistetaan 3:sta kunnes apuosoitin== null |
void |
lisaa(TYPE alkio)
Lisätään uusi alkio listaan |
static void |
main(java.lang.String[] args)
Testataan linkitettyä listaa |
void |
poistaKaikki()
Poistetaan kaikki listan alkiot |
protected void |
teeMuutos()
Tehdään listaan muutos, eli lasketaan muutosten määrää |
java.lang.String |
toString()
Tulostetaan listan sisältö merkkijonoon |
void |
tulosta()
Tulostetaan lista konsolille |
void |
tulosta(java.io.OutputStream os)
Tulostetaan lista tietovirtaan |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Field Detail |
|---|
private LinkitettyLista.ListanAlkio<TYPE> ensimmainen
private LinkitettyLista.ListanAlkio<TYPE> viimeinen
protected transient int muutostenMaara
| Constructor Detail |
|---|
public LinkitettyLista()
| Method Detail |
|---|
protected void teeMuutos()
public void lisaa(TYPE alkio)
alkio - LinkitettyListalista = new LinkitettyLista (); lista.toString() === ""; lista.lisaa(1); lista.toString() === "1 "; lista.lisaa(2); lista.toString() === "1 2 "; lista.lisaa(99); lista.toString() === "1 2 99 ";
public void tulosta(java.io.OutputStream os)
os - public void tulosta()
public java.lang.String toString()
toString in class java.lang.Objectpublic void poistaKaikki()
LinkitettyListalista = new LinkitettyLista (); lista.lisaa(1); lista.lisaa(2); lista.lisaa(99); lista.toString() === "1 2 99 "; lista.poistaKaikki(); lista.toString() === "";
public void kaanna()
Yksi yksinkertainen idea: tehdään apulista ja listan alusta
siiretään aina alkio kerrallaan apulistan alkuun:
1) Otetaan osoitin listan alkuun
2) apuosoittimet eka ja vika uuteen listaan
3) otetaan osoittimen kohdasta ensimmäinen pois ja li-
sätään se uuden listan alkuun
4) toistetaan 3:sta kunnes apuosoitin== null
LinkitettyListalista = new LinkitettyLista (); lista.lisaa(1); lista.toString() === "1 "; lista.kaanna(); lista.toString() === "1 "; lista.lisaa(2); lista.toString() === "1 2 "; lista.kaanna(); lista.toString() === "2 1 "; lista.lisaa(99); lista.toString() === "2 1 99 "; lista.kaanna(); lista.toString() === "99 1 2 "; lista.lisaa(77); lista.toString() === "99 1 2 77 "; lista.kaanna(); lista.toString() === "77 2 1 99 ";
public java.util.Iterator<TYPE> iterator()
iterator in interface java.lang.Iterable<TYPE>public static void main(java.lang.String[] args)
args - ei käytössä
|
||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||