MyClass2 つの整数を格納する があり、呼び出さVector<MyClass>れた がありmyVectorます。
今、私はこれを行います:
...
myVector.add(new MyClass(1,1));
for(MyClass m : myVector)
System.out.println(m);
System.out.println(myVector.size());
myVector.remove(new MyClass(1,1));
for(MyClass m : myVector)
System.out.println(m);
System.out.println(myVector.size());
...
ここでの問題は、Vector とそのサイズを印刷するとわかるように、オブジェクトが削除されていないことです。どうすれば修正できますか?
編集:オブジェクトが見つからないことがわかり、contains()確認するためにテストしました。私が必要とするのは、それを値で比較することです。演算子をオーバーロードできれば==実行できますが、これを修正する方法がわかりません。
編集2:わかりました、equals()私がやりたいことをします。しかし、hashCode メソッドに何を入れればよいかわかりません。
編集 3: contains() で見つけることができますが、削除しても削除されません。
ただし、これを使用して削除できます。
int position = myVector.indexOf(new MyClass(1,1));
myVector.remove(position);
remove(new MyClass(1,1) と同じですが、上記のコードは機能し、remove() は機能しません。