次のコードを実行するとnullと表示されます。理由は大体想像がつくのですが、これで7と表示されるようにする(HashMapのキーの等価判定をequalsメソッドで行う)ためにはどうすればよいですか?
Java
1import java.util.*; 2 3class Test{ 4 int a; 5 boolean equals(Test other){ 6 if(this.a==other.a){ 7 return true; 8 } else { 9 return false; 10 } 11 } 12 Test(int a){ 13 this.a=a; 14 } 15} 16 17class Main { 18 public static void main(String[] args) { 19 HashMap<Test,Integer> a=new HashMap<Test,Integer>(); 20 a.put(new Test(5),7); 21 System.out.println(a.get(new Test(5))); 22 } 23}
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/02/17 23:53