字符串不包含在 java 中无法正常工作

String not contain not working properly in java

我想检查下面字符串的括号部分。如果括号部分包含在字符串中,则应打印 "Contain"。但就我而言,它正在打印 "Not Contain"。

String synonym = "security (generic term)"

synonym = synonym.replaceAll("\p{P}","");

if ((!synonym.contains("generic term")) || (!synonym.contains("similar term"))
    (!synonym.contains("related term")) || (!synonym.contains("antonym"))) {
    System.out.println("Not Contain);
} else {
    System.out.println("Contain);
}
if ((!synonym.contains("generic term")) || (!synonym.contains("similar term"))
(!synonym.contains("related term")) || (!synonym.contains("antonym")))

除非 synonym 包含 所有 这些条款,否则将是真实的。 (因为 || 条件。即即使它确实包含一个,它也不会包含其他条件之一,从而使其中一个条件的计算结果为真。)

要解决此问题,请使用 &&

if ((!synonym.contains("generic term")) && (!synonym.contains("similar term"))
(!synonym.contains("related term")) && (!synonym.contains("antonym")))