Source of TestHashMapOfStringAndInteger.java


  1: //TestHashMapOfStringAndInteger.java
  2: //Compare the output of this program with that of
  3: //TestTreeMapOfStringAndInteger.java and try to
  4: //explain the difference(s) that you see.

  6: import java.util.HashMap;
  7: import java.util.Scanner;

  9: public class TestHashMapOfStringAndInteger
 10: {
 11:     public static void main(String[] args)
 12:     {
 13:         System.out.println("=====1=========================");
 14:         //Create empty String/Integer HashMap, then display content and size.
 15:         HashMap<String, Integer> hashMap;
 16:         hashMap = new HashMap<String, Integer>();
 17:         System.out.println(hashMap);
 18:         System.out.println(hashMap.size());
 19:         pause(1);

 21:         System.out.println("=====2=========================");
 22:         //Add one key/value pair and re-display.
 23:         hashMap.put("Hello", 2);
 24:         System.out.println(hashMap);
 25:         System.out.println(hashMap.size());
 26:         System.out.println(hashMap.get("Hello"));
 27:         pause(2);

 29:         System.out.println("=====3=========================");
 30:         //Add another key/value pair and re-display.
 31:         if (hashMap.containsKey("Hello"))
 32:         {
 33:             hashMap.put("Hello", 5);
 34:         }
 35:         System.out.println(hashMap);

 37:         if (hashMap.containsKey("Good-bye"))
 38:         {
 39:             hashMap.put("Good-bye", 5);
 40:         }
 41:         else
 42:         {
 43:             hashMap.put("Good-bye", 7);
 44:         }
 45:         System.out.println(hashMap);
 46:         System.out.println(hashMap.size());
 47:         System.out.println(hashMap.get("Hello"));
 48:         System.out.println(hashMap.get("Good-bye"));
 49:         pause(3);

 51:         System.out.println("=====4=========================");
 52:         //Display all keys, all values and all key/value pairs.
 53:         //Do it first the pre-Java 8 way ...
 54:         for (String s : hashMap.keySet())
 55:         {
 56:             System.out.print(s + " ");
 57:         }
 58:         System.out.println();
 59:         for (Integer i : hashMap.values())
 60:         {
 61:             System.out.print(i + " ");
 62:         }
 63:         System.out.println();
 64:         for (String s : hashMap.keySet())
 65:         {
 66:             System.out.println(s + " " + hashMap.get(s));
 67:         }
 68:         pause(4);

 70:         System.out.println("=====5=========================");
 71:         //Display all keys, all values and all key/value pairs.
 72:         //Now do it the Java 8 way ...
 73:         hashMap.keySet().forEach(s -> System.out.print(s + " "));
 74:         System.out.println();
 75:         hashMap.values().forEach(i -> System.out.print(i + " "));
 76:         System.out.println();
 77:         hashMap.keySet().forEach
 78:         (
 79:             s -> System.out.println(s + " " + hashMap.get(s))
 80:         );
 81:         pause(5);
 82:     }

 84:     public static void pause(int pauseNumber)
 85:     {
 86:         Scanner keyboard = new Scanner(System.in);
 87:         System.out.println("Pause " + pauseNumber);
 88:         System.out.print("Press Enter to continue ... ");
 89:         keyboard.nextLine();
 90:     }
 91: }
 92: /*  Output (without the pauses):
 93:     =====1=========================
 94:     {}
 95:     0
 96:     =====2=========================
 97:     {Hello=2}
 98:     1
 99:     2
100:     =====3=========================
101:     {Hello=5}
102:     {Hello=5, Good-bye=7}
103:     2
104:     5
105:     7
106:     =====4=========================
107:     Hello Good-bye
108:     5 7
109:     Hello 5
110:     Good-bye 7
111:     =====5=========================
112:     Hello Good-bye
113:     5 7
114:     Hello 5
115:     Good-bye 7
116: */