今日はまったバグ。
Map<Long, String> map = new HashMap<Long, String>();
map.put(1L, "1");
System.out.println(map.get(1));
System.out.println(map.get(1L));
キーに1 (ボクシング変換でIntegerになる)を渡した場合と1Lを渡した場合で挙動が異なるというオチ。Map.get()の引数がObjectなので両方受け付けちゃうんですね。
投稿日時 : 2009年3月2日 21:59