ArrayList<Integer> lis = new ArrayList<Integer>();
lis.add(2);
lis.add(3);
ArrayList<Integer> lis2 = new ArrayList<Integer>();
lis2.add(2);
lis2.add(3);
HashMap<ArrayList<Integer>, Integer> map = new HashMap<ArrayList<Integer>, Integer>();
map.put(lis, 7);
System.out.println(map.containsKey(lis2));
最初は、lis と lis2 は異なるオブジェクトであるため、コードが「false」を出力すると予想していました。驚いたことに、コードは「true」を出力しました。hasmap は、containsKey() を呼び出すときに何をチェックしますか?