Java do nothing

2020-02-26 03:58发布

What is the equivalent to Python's pass in Java? I realize that I could use continue or not complete the body of a statement to achieve that effect, but I like having a pass statement.

标签: java python
6条回答
男人必须洒脱
2楼-- · 2020-02-26 04:14
;

; is the empty statement. Usually, you don't need it - you can just put nothing in the brackets for an empty loop - but it can be useful.

查看更多
趁早两清
3楼-- · 2020-02-26 04:14

I feel, there is no construct in Java identical to pass in Python. This is mostly because Java is a statically typed language where as Python is a dynamically typed language. More so when you are defining a method / function. In that context, the provided answers are valid / correct only for a method that returns void.

For example for a Python function

def function_returns_void:
    pass

you can have a Java method

public void function_returns_void(){}

or

public void function_returns_void(){;}

but when a method is supposed to return a value, while pass may still work in Python, one will stuck with compilation problem when not returning a value.

查看更多
地球回转人心会变
4楼-- · 2020-02-26 04:18

I normally use something like:

"".isEmpty(); // do nothing

It's useful to be able to have a line of code which does nothing when debugging. You can put a breakpoint on that line, even if it would usually be an empty block of code (e.g. empty catch block etc) which can create confusion about where the breakpoint is actually set.

查看更多
我只想做你的唯一
5楼-- · 2020-02-26 04:31

Just use a semi-colon ;, it has the same effect.

查看更多
家丑人穷心不美
6楼-- · 2020-02-26 04:32

If you want something noticeable, you can use

assert true;

This will allow you to have something that a reader can recognize or that can be searched for.

查看更多
狗以群分
7楼-- · 2020-02-26 04:35

There is no (strict) equivalent since in java you have to specify the return type for the method in its declaration which is then checked against a computed type of the following the return statement. So for methods that have a return type - neither semicollon nor leaving empty braces will work;

I personally use: throw new java.lang.UnsupportedOperationException("Not supported yet."); - this is searchable, alerts you that the method is not implemented and is compatible with the strict return types.

查看更多
登录 后发表回答