所以下面我有和方法如果满足第二个条件则返回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("*")));
}
答案 0 :(得分:-1)
不试图理解你的整个条件句,我猜你在这里有错字.-
if (a.info[2].equals("*") & b.info[2].equals("*")) {
你的意思是
if (a.info[2].equals("*") && b.info[2].equals("*")) {
代替。
您可以查看this old thread以获取更多信息。
修改强>
如果问题仍然存在,可能是第二个条件句有问题。您可以做的最好的事情是设置断点以在运行时显示所有相关值;你应该很容易看出出了什么问题。