/** * Esimerkki linkitetytstä listasta Java 1.5:n geneerisyyttä * ja "autoboxingia" käyttäen. * @author Vesa Lappalainen * @version 1.0, 16.03.2002 * @version 1.1, 01.03.2005 * @param tuuppi, jota talletetaan */ public class LinListaGen { /** * Linkitetyn listan yksi alkio. Sisältää datan ja viitteen seuraavaan. * @param tyyppi jota talletetaan */ static public class Alkio { private TYPE i; private Alkio seuraava; public Alkio(TYPE i) { this.i = i; seuraava = null; } public TYPE getI() { return i; } } private Alkio eka; private Alkio viimeinen; public LinListaGen() { eka = null; viimeinen = null; } public LinListaGen(int koko) { this(); } public void lisaa(TYPE i) { Alkio uusi = new Alkio(i); if ( eka != null ) viimeinen.seuraava = uusi; else eka = uusi; viimeinen = uusi; } public String toString() { StringBuffer s = new StringBuffer(""); for (Alkio i=eka; i!=null; i = i.seuraava ) s.append(" " + i.getI()); return s.toString(); } public static void main(String[] args) { LinListaGen luvut = new LinListaGen(); try { luvut.lisaa(0); luvut.lisaa(2); luvut.lisaa(99); } catch ( Exception e ) { System.out.println("Virhe: " + e.getMessage()); } System.out.println(luvut); } }