2015-11-28 73 views
1

我一直试图让这个测验现在工作一段时间。一切似乎都在努力,直到我试图计算用户的正确答案的数量。看起来好像“正确的”变量没有被添加到它应该的时候。它始终显示0.检查用户输入是否与HashMap值相匹配

public class PresidentQuiz { 

    public static void main(String[] args) { 
     Integer correct = 0; 
     Map<Integer, String> president1 = new HashMap<Integer, String>(); 
     president1.put(35, "Kennedy"); 
     president1.put(36, "Johnson"); 
     president1.put(37, "Nixon"); 
     president1.put(38, "Ford"); 
     president1.put(39, "Carter"); 
     president1.put(40, "Reagan"); 
     president1.put(41, "George Bush"); 
     president1.put(42, "Clinton"); 
     president1.put(43, "George W Bush"); 
     president1.put(44, "Obama"); 
     System.out.println("Size of map: " + president1.size()); 

     Map<Integer, String> president2 = new TreeMap<Integer, String>(president1); 
     Set set1 = president2.entrySet(); 
     Iterator iterator1 = set1.iterator(); 
     while(iterator1.hasNext()) { 
      Map.Entry me = (Map.Entry)iterator1.next(); 
      System.out.print("President #" + me.getKey() + ": "); 
      System.out.println(me.getValue()); 
      } 
     HashSet<Integer> randint = new HashSet<Integer>(); 
     while(randint.size() < 5) { 
      randint.add((int) (Math.random() * ((44 - 35) + 1) + 35)); 
     } 
     System.out.println(); 
     System.out.println("Presidents Quiz"); 
     System.out.println(); 
     String pres = null; 
     Iterator<Integer> iterator2 = randint.iterator(); 
     @SuppressWarnings("resource") 
     Scanner input = new Scanner(System.in); 
     while(iterator2.hasNext()) { 
      System.out.println("Who was president #" + iterator2.next() + "?"); 
      pres = input.next(); 
     } 
     while(iterator2.hasNext()) { 
      String name = president1.get(iterator2.next()); 
      if (name == pres) { 
       correct += 1; 
      } 
     } 
     // Print correct score 
     System.out.println("Your score was " + correct); 
     System.out.println(); 
     // Want to sort names in alphabetical order 
     System.out.println("Here are the last 10 presidents in alphabetical order:"); 

     } 
    } 

回答

相关问题