StatementWithEmptyBody的目的是什么?

Tla*_*-ES 8 android suppress-warnings

当我在Android Studio中为我的项目创建抽屉栏时,在下一个选择项的代码中:

@SuppressWarnings("StatementWithEmptyBody")
@Override
public boolean onNavigationItemSelected(MenuItem item) {
Run Code Online (Sandbox Code Playgroud)

但是这个注释的用途是什么?

Rum*_*tel 4

警告本身就解释了含义。

返回类型onNavigationItemSelectedboolean.,我们需要返回任何boolean值。

如果有条件if没有onNavigationItemSelected返回则@SuppressWarnings("StatementWithEmptyBody")需要添加。

例子:

@Override
public boolean onNavigationItemSelected(@NonNull MenuItem item) {
    int id = item.getItemId();
    if (id == R.id.xyz) {
       // you should return boolean value here.
    }
    return false;
}
Run Code Online (Sandbox Code Playgroud)

false在示例中,我们默认返回。并且我们没有返回任何值

if (id == R.id.xyz)健康)状况。

你可以清楚地看一下警告。

抑制警告

  • 在 Java 中,“boolean”和“Boolean”是不同的类型。该函数应该返回一个“布尔值”。这个答案错误地指出这个函数应该返回一个“布尔值”。 (2认同)