如何解决单链表中的while循环条件
正在解决单链表中的循环检测问题,并且遇到了While循环中似乎无法理解的问题
我已经附上了一张图片,绿色框中的一张给了我正确的输出
红色框中的内容给我错误的输出结果
对这两个之间的区别有何解释?因为除了顺序以外,我似乎无法找到它们之间的区别,但是我设置了一个AND语句,所以我认为无论顺序如何,它们都应该工作,但我遇到的情况似乎并非如此
解决方法
在 AND 条件下,将首先检查第一个条件,如果该条件为False,则不会转到第二个条件并从那里返回。
在这里,而第一个是
oneUp.next != null
如果 oneUp 的值为空,则将无法访问 oneUp 的下一个。 因此,我们需要验证 OneUp 的值,使其不应该为null。
如果它为null,它将不会去检查下一个条件。
因此必须首先检查oneUp != null
。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。