今年は誰が贈り物を買っているのかを知るために、リスト内の人にランダムにマッチするプログラムを作ろうとしています。2つの同一リスト内の2つのオブジェクトがJavaで一致するのを防ぐ
私が遭遇している問題は、結婚しているために特定の人がマッチできないということです。たとえば、デアナとピートは一致しないし、クリスとリンゼイもできません。
ここでは、これらのマッチアップを防止しようとすることなく、私は今何をしています。
Map<String, String> couples = new HashMap<>();
couples.put("Deana", "Pete");
couples.put("Chris", "Lindsay");
その後、彼らがカップルしているかどうかを確認するためにあなたのif
を更新:それをする
if(!family[i].equals(perTst)
&& !perTst.equals(couples.get(family[i]))
&& !family[i].equals(couples.get(perTst))) {
//...
}
javaの文字列を比較するときは、String equals()関数を使用してください。http://docs.oracle.com/javase/7/docs/api/java/lang/String.html –
何が問題になっていますか? – Gendarme
@RAZ_Muh_Taz配列が重複する可能性がある場合を除き、この場合、IDの比較はかなり安全です。 – shmosel