该链接具有字符串,整数和字符串。我的目的是使用while循环和短路运算符检查第一和第三字符串。
行path1 =新行(“ C1”,1,“ B1”,空);
行path1 =新行(“ C1”,1,“ A1”,null);
Lines curNode = head;
while (curNode.next != null && !curNode.L1.equals(line1) && !curNode.L2.equals(line2) )
{
curNode = curNode.next;
}
但是,此while循环所做的是,满足第一个条件,但不满足第二个条件。例如,如果我正在寻找字符串“ C1”和“ B1”,我会得到“ C1”和“ A1”。我的看法是,一旦遇到第一个条件,第二个条件将被忽略。
这完全有可能吗,还是有其他不同的方法呢?
最佳答案
你有:
while (curNode.next != null && !curNode.L1.equals(line1) && !curNode.L2.equals(line2))
问题是,如果这些
equals()
为真,则您的循环将不会继续(由于取反),但是除非两个equals()
都为真,否则您想继续循环,因此请执行以下操作:while (curNode.next != null &&
!(curNode.L1.equals(line1) && curNode.L2.equals(line2)))
关于java - 是否可以遍历链接列表以检查特定链接中的2个属性(2个字符串)?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20340133/