たとえば、私がEricという名前の人物を登録しようとすると、もう一度Ericを登録すると動作します。これは私が持っているコードでは起こらないはずです。 ericが既に登録されている場合は登録しないでください。 "=="java - registerの問題
if (person.getName() == name)
あなたはJavaでは
if (person.getName().equals(name))
をしたい、非ため参照の等価です:
private Person findName(String name) {
for (Person person : personer) {
if (person.getName() == name) {
return person;
}
}
return null;
}
private boolean containsName(String name) {
return findName(name) != null;
}
+1のコードの部分が間違っています。しかし、コードの設計も間違っています(私の記事を参照してください)。そして、_that_を修正した後は、手動で名前を比較する必要はありません。この問題は解決しません。 –
私はここにワームの缶を開くのを気にする傾向がありますが、あなたは絶対に正しいです。 –