ArrayList
オブジェクトには と呼ばれるメソッドがありますcontains
。このメソッドを使用すると、オブジェクトがコレクションの一部であるかどうかをテストできます。ドキュメントを読んでください。
実施例
ArrayList<People> people = new ArrayList<People>();
// Define the collection.
People p = new People("Dave");
// Create a new test object.
people.add(p);
// Add the object to the collection.
if(people.contains(p))
{
// Will print out, because P exists within the people collection.
System.out.println("Object exists in the collection");
}
元の回答の改良
コメントで示唆されているように、これはゲームの比較アルゴリズムであるため、これをもう少し最適化することをお勧めします。それを念頭に置いて、HashMapを使用することを考えました。
HashMap の例
HashMap<String, Person> friends = new HashMap<String, Person>();
// Create the HashMap object.
Person p = new Person("Dave");
// Create a test object, with the name "Dave".
String key = p.getName();
// Get a key. In this case, the object's name.
friends.put(key, p);
// Add the person to the collection.
このコードを使用すると、HashMap コレクションに人物が含まれるようになります。これで、誰かがあなたの「攻撃オーラ」に足を踏み入れたときに、その人の名前を簡単に取得して、HashMap にキーが存在するかどうかを確認できます。これは迅速 (O(1) の複雑さ) で正確です。何よりも、カスタム値を比較しています。同じオブジェクトではありません。そのため、ユーザーは自分のオブジェクトをリサイクルして、引き続きコレクションに保存できます。
うまくいけば、この編集が役に立ちます:)