While else statement equivalent for Java?
Python中while / else的Java等价物是什么? 因为它在Java中不起作用。 第一部分是我的python代码,第二部分是我尝试将其翻译成Java。 编辑:tring复制while-else
1 2 3 4 5 6 7 8 9 10 | 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尝试
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
最接近的Java等价物是明确地跟踪你是否以
对于那些不知道Python在其他方面做什么的Java人(和Python人),如果循环没有
有一段时间 - 实际上有一个
1 2 3 4 5 6 | while whatever(): if whatever_else(): break do_stuff() else: finish_up() |
可以翻译成
1 2 3 4 5 6 7 8 9 10 11 | boolean noBreak = true; while (whatever()) { if (whateverElse()) { noBreak = false; break; } doStuff(); } if (noBreak) { finishUp(); } |
试试这个:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
在Java中
但
如果你看一下Java Backus-Naur形式语法(语法规范),
您的解决方案需要相应地进行修改。您可以将
1 2 3 4 5 6 7 | if temp.nextToBeeper() { //handle } else { while(temp.frontIsClear()) { //handle } } |
再使用一个if语句:
1 2 3 4 5 | if (temp.nextToABeeper()) // pick beer } else { while (temp.frontIsClear()) { /* your code */ } } |
要么:
1 2 3 4 5 | if (temp.frontIsClear()) while (temp.frontIsClear()) { /* your code */ } } else if (temp.nextToABeeper()) { // pick beer } |