与Java中的pass
相同的是什么?我意识到我可以使用continue
或不完成语句的主体来实现这种效果,但我喜欢使用pass
语句。
答案 0 :(得分:29)
只使用分号;
,它具有相同的效果。
答案 1 :(得分:10)
如果你想要一些明显的东西,你可以使用
assert true;
这将允许您拥有读者可以识别或可以搜索的内容。
答案 2 :(得分:7)
;
;
是空语句。通常,你不需要它 - 你可以在括号中没有任何东西用于空循环 - 但它可能很有用。
答案 3 :(得分:1)
没有(严格)等效项,因为在Java中,您必须在其声明中指定该方法的返回类型,然后根据返回语句后面的计算类型检查该方法。因此,对于具有返回类型的方法-分号和留空括号都不起作用;
我个人使用:throw new java.lang.UnsupportedOperationException("Not supported yet.");
-这是可搜索的,提醒您该方法尚未实现且与严格的返回类型兼容。
答案 4 :(得分:1)
我通常使用类似的东西:
"".isEmpty(); // do nothing
拥有一行调试时不执行任何操作的代码很有用。您可以在该行上放置一个断点,即使它通常是一个空的代码块(例如,空的catch块等),也可能使人们对断点的实际位置感到困惑。
答案 5 :(得分:0)
我觉得Java中没有与Python中相同的构造。这主要是因为Java是一种静态类型的语言,而Python是一种动态类型的语言。在定义方法/函数时更是如此。在这种情况下,提供的答案仅对返回void的方法有效/正确。
例如Python函数
def function_returns_void:
pass
您可以使用Java方法
public void function_returns_void(){}
或
public void function_returns_void(){;}
但是当应该使用一种方法返回值时,尽管 pass 可能在Python中仍然有效,但是当不返回值时,就会陷入编译问题。