Java打破vs返回

时间:2015-05-23 02:17:42

标签: java switch-statement boolean break

我使用的是返回true的布尔值。当发生类似的事情时:

public boolean t(String label, String[] arguments) {
    boolean j = false;
    if (!j) {
        return true;
    }
    return true;
}

但是,在这个布尔值中我有一个switch语句。您可能知道,通常会断开switch语句。但是,我正在做类似于测试布尔值的真假。我会在switch语句中返回,还是在boolean为false时中断?

一个例子是这样的:

switch (arguments.length) {
    case 0:
        if (j) return true;
        break;
    default:
        break;
}

哪个更有用,交换返回true是为了休息,还是保持不变?

2 个答案:

答案 0 :(得分:2)

break语句将终止switch语句的执行并继续该方法。 return语句将完全保留该方法。

关于哪一个更好,这是一个偏好的问题。它归结为方法设计。

我会说,在大多数情况下,如上所述,最好直接使用return语句并完全保留该方法。

那说,这个:

public boolean t(String label, String[] arguments) {
    boolean j = false;
    if (!j) {
        return true;
    }
    return true;
}

可以简化为:

public boolean t(String label, String[] arguments) {   
    return true;
}

如果你只是从一个变量中检查一个条件,那么你就不需要switch语句;它不是最佳的。

  

我正在做类似于测试布尔值为真或假的事情

你不应该真的"测试"如果布尔变量为true或false,则返回它们。

答案 1 :(得分:0)

返回调用总是将处理程序返回给被调用函数,其中switch语句中的break是为了避免检查switch case中存在的其他情况。如果你不希望你的程序返回任何值,那么break就足够了,否则需要返回。