次のコードを実行するとnullと表示されます。理由は大体想像がつくのですが、これで7と表示されるようにする(HashMapのキーの等価判定をequalsメソッドで行う)ためにはどうすればよいですか?
Java
import java.util.*; class Test{ int a; boolean equals(Test other){ if(this.a==other.a){ return true; } else { return false; } } Test(int a){ this.a=a; } } class Main { public static void main(String[] args) { HashMap<Test,Integer> a=new HashMap<Test,Integer>(); a.put(new Test(5),7); System.out.println(a.get(new Test(5))); } }
まだ回答がついていません
会員登録して回答してみよう