Programmeren in Java/Map
HashMap
bewerkenJava-code: Main.java
import java.util.*;
public class Main {
public static void main(String[] args){
HashMap<String, String> steden = new HashMap<String, String>();
steden.put("9000", "Gent");
steden.put("1000", "Brussel");
steden.put("1011 AA", "Ruijterkade (Amsterdam)");
Iterator<String> it = steden.keySet().iterator();
while (it.hasNext()) {
String postcode = it.next();
String stad = steden.get(postcode);
System.out.println(stad + " heeft postcode " + postcode + ".");
}
}
}
De volgorde is niet volgens postcode, maar volgens de hash-waarde van de postcode. Deze is moeilijk te voorspellen, en daarom kan je ze als willekeurig beschouwen.
Brussel heeft postcode 1000. Gent heeft postcode 9000. Ruijterkade (Amsterdam) heeft postcode 1011 AA.
TreeMap
bewerkenJava-code: Main.java
import java.util.Map;
import java.util.TreeMap;
public class Main {
public static void main(String[] args) {
Map<String, Kind> myMap = new TreeMap<>();
myMap.put("Lukas", new Kind("Lukas", 5, 1.20));
myMap.put("Luuk", new Kind("Luuk", 8, 1.00));
myMap.put("Sandra", new Kind("Sandra", 3, 0.60));
myMap.put("Barbara", new Kind("Barbara", 5, 1.10));
myMap.put("Sandra", new Kind("Sandra", 10, 1.28));
for (Map.Entry<String, Kind> stringKindEntry : myMap.entrySet()) {
System.out.println(stringKindEntry);
}
}
}
Een TreeMap is een geordende (gesorteerde) Map die entries in een boomstructuur bewaard. Deze entries worden automatisch gesorteerd op key dus de sleutelwaarden moeten vergeleken kunnen worden, hetzij door implementatie van Comparable of door de Map te voorzien van een Comparator.
Barbara=Barbara (5j) is 1.1m groot Lukas=Lukas (5j) is 1.2m groot Luuk=Luuk (8j) is 1.0m groot Sandra=Sandra (10j) is 1.28m groot