【发布时间】:2015-04-25 21:01:21
【问题描述】:
所以下面我有一个方法,如果满足第二个条件,则返回 true。但是,如果满足第一个条件,我想返回 false。但是,我得到的问题是它总是返回 false 。
public static boolean matching(Request a, Request b) {
if (a.info[2].equals("*") & b.info[2].equals("*")) {
return false;
}
return ((a.info[1].equals(b.info[1]) && a.info[2].equals(b.info[2])) || (a.info[1]
.equals(b.info[1]) && a.info[2].equals("*") || b.info[2]
.equals("*")));
}
【问题讨论】:
-
能否向我们展示一个您希望返回
true的输入示例? -
如果它一直返回false,那么要么第一个条件为真,要么第二个条件为假。使用调试器找出原因。我们对这些数组的内容一无所知。
-
是的,我放了 && 基本上它是一个服务器程序。如果两者都有 * 那么它应该返回 false 并等待。它这样做。但是,如果它不是明星,它仍然会返回 false 并等待
-
请尝试在可理解的示例中描述您想要达到的条件(我相信只要正确说明它就会解决您的问题)。
-
@JayPatel,请在你的答案中修正
&,以避免混淆,让新读者更快地帮助你。
标签: java boolean logical-operators