Een gelinkte lijst kun je beschouwen als een verzameling met dingen. Bijvoorbeeld een lijst met alle namen van je klasgenoten.
Als je een geindexeerde gelinkte list wil gebruiken dan zou je bijvoorbeeld een ArrayList of een Vector kunnen gebruiken. (Een arrayList die is heel snel, en een vector een stuk langzamer omdat die gesynchroniseerd is. Als je niet weet wat het is, kun je voor de veiligheid altijd een vector gebruiken).
code:
1
2
3
4
5
6
7
| ArrayList list = new ArrayList();
list.add(new Integer(0));
list.add(new Integer(1));
list.add(new Integer(2));
for(int k=0;k<list.size();k++)
System.out.println(list.get(k)); |
Als je iets wil zoeken op een naam bv (lees hashcode) dan zou je een HashMap of een HashTable kunnen gebruiken. Een HashTable is gesynchroniseerd en een HashMap niet.
code:
1
2
3
4
5
| HashMap map = new HashMap();
map.put("1",new Integer(1));
map.put("2",new Integer(2));
System.out.println(map.get("1")); |
Maar als je niets van al dit moois wilt gebruiken dan kun je ook voor een LinkedList gaan. Je hebt de dubbel gelinkte lijst en de enkel gelinkte lijst. In een dubbel gelinkte lijst kun je zowel naar voren als naar achteren zoeken, maar is wel iets langzamer. In een enkel gelinkte lijst kun je maar 1 richting opzoeken. Maar als ik eerlijk ben gebruik ik deze structuren bijna nooit meer.
Maar je kan er natuurlijk ook zelf een schrijven

is niet moeilijk en je leert er ongelovelijk veel mee. En ik zou met voorlopig ook nog niet al te druk maken om die synchronized dingen, die komen later wel.
Tip: Ga eens rondneuzen in de java.util directory
http://java.sun.com/j2se/1.3.0/docs/api/java/util/package-summary.html