このコードブロックは偽を返し続けます。理由はわかりません。Javaハッシュセットは、真ではなく偽を返します。
List<String> angry = new ArrayList<String>();
while ((anger = angerSt.readLine()) != null) {
angry.add(anger);
}
angerSt.close();
String[] angrywords = angry.toArray(new String[0]);
String word = "mad"
Set<String> angryWordSet = new HashSet<String>(Arrays.asList(angrywords));
if(angryWordSet.contains(word))
{
System.out.print("Yes");
return true;
}
else return false;
angryWordSetには、mad、angry、livid、fumingという文字列が含まれています。私はそれがそこにいたことを確認するためにそれを印刷した。私はどうにかして偽り続けています。誰かがこれを助けることができますか?
あなたは本当にラインが 'mad'ではないか確認してください。スペースや特殊文字で?あなたはコレクション内の各文字列の長さを印刷できますか? –