import java.util.*;
import static java.util.Map.entry;
public class Main {
public static void main(String[] args) {
Map<String, Integer> map = new HashMap<>();
map.put("Ζηνοβία", 11);
map.put("Κατερίνα", 9);
map.put("Αδριάνα", 11);
map.put("Ζηνοβία", 12);
System.out.println(map);
for (String name : map.keySet())
System.out.println(name);
for (Map.Entry<String, Integer> entry : map.entrySet())
System.out.println(entry.getKey() + " : " + entry.getValue());
System.out.println("Contains Αδριάνα?" + map.containsKey("Αδριάνα"));
System.out.println(map.get("Αδριάνα"));
System.out.println(map.remove("Αδριάνα"));
System.out.println("Contains key Αδριάνα? " + map.containsKey("Αδριάνα"));
System.out.println("Contains value 9? " + map.containsValue(9));
map.put("Αδριάνα", 11);
TreeMap<String, Integer> treeMap = new TreeMap<>(map);
treeMap.firstKey(); // NoSuchElementException αν ο πίνακας κατακερματισμού είναι άδειος
treeMap.firstEntry(); // NoSuchElementException αν ο πίνακας κατακερματισμού είναι άδειος
treeMap.lastKey(); // NoSuchElementException αν ο πίνακας κατακερματισμού είναι άδειος
treeMap.lastEntry(); // NoSuchElementException αν ο πίνακας κατακερματισμού είναι άδειος
treeMap.subMap("Ζ","Λ"); // "Ζ" <= στοιχεία < "Λ"
treeMap.subMap("Ζ", true, "Κω", true); // inclusive = true
treeMap.headMap("Ζηνοβία"); // στοιχεία < "Zηνοβία"
treeMap.headMap("Ζηνοβία", true); // inclusive = true
treeMap.tailMap("Ζηνοβία"); // στοιχεία >= "Ζ"
treeMap.tailMap("Ζηνοβία", false); // inclusive = false
treeMap.ceilingEntry("Ζ"); // το μικρότερο στοιχείο >= "Ζηνοβία"
treeMap.floorEntry("Ζ"); // το μεγαλύτερο στοιχείο <= "Ζηνοβία"
treeMap.higherEntry("Ζηνοβία"); // το μικρότερο στοιχείο > "Ζηνοβία"
treeMap.lowerEntry("Ζηνοβία"); // το μεγαλύτερο στοιχείο < "Ζηνοβία"
treeMap.descendingMap();
treeMap.navigableKeySet();
Iterator<String> i = treeMap.descendingKeySet().iterator();
while (i.hasNext())
System.out.print(i.next() + " ");
Map<String, Integer> roMap = Map.ofEntries(
entry("Ζηνοβία", 12),
entry("Κατερίνα", 9),
entry("Αδριάνα", 11));
System.out.println(roMap);
Map<Integer, String> idMap = new IdentityHashMap<>(); // Α.Μ., όνομα
Integer i1 = Integer.valueOf(1);
Integer i2 = Integer.valueOf(1);
idMap.put(i1, "Γιάννης");
idMap.put(i2, "Νίκος");
System.out.println(idMap);
}
}