作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
Python 中 while/else 的 Java 等价物是什么?因为它在 Java 中不起作用。第一部分是我的 Python 代码,第二部分是我尝试将其翻译成 Java。 编辑:尝试复制 while-else
while temp.frontIsClear():
if temp.nextToABeeper():
temp.pickBeeper()
count += 1
temp.move()
else:
if temp.nextToABeeper():
temp.pickBeeper()
count += 1
print "The count is ", count
Java 尝试
Robot temp = new Robot();
int count = 0;
while (temp.frontIsClear())
{
if (temp.nextToABeeper())
{
temp.pickBeeper();
count += 1;
}
temp.move();
}
else
{
if (temp.nextToABeeper())
{
temp.pickBeeper();
count += 1;
}
}
print ("The count is ", count);
最佳答案
最接近的 Java 等价物是显式跟踪您是否使用 break
退出循环...但您实际上没有 break
在您的代码中,因此首先使用 while-else 毫无意义。
对于不知道 Python 的 while-else 是做什么的 Java 人(和 Python 人)来说,如果循环结束没有中断
。另一种思考方式是,如果 while
条件为假,它就会执行,就像 if
语句一样。
实际上有一个break
的while-else:
while whatever():
if whatever_else():
break
do_stuff()
else:
finish_up()
可以翻译成
boolean noBreak = true;
while (whatever()) {
if (whateverElse()) {
noBreak = false;
break;
}
doStuff();
}
if (noBreak) {
finishUp();
}
关于java - 而 else 语句等同于 Java?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43283142/
判断这2个相似的Uris实际上相同的标准方法是什么? var a = new Uri("http://sample.com/sample/"); var b = new Uri("http://sam
这个问题在这里已经有了答案: Why does "true" == true show false in JavaScript? (5 个答案) 关闭 5 年前。 可能我很困惑,但我无法理解这个愚蠢
我是一名优秀的程序员,十分优秀!