Python中文网

一个关于 编程问题的解答网站.

有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

带return语句的javaifelse性能

private String getString1(int n){

    if (n == 0) {
        return "ZERO";
    }
    if (n == 1) {
        return "ONE";
    }
    if(n == 2) {
        return "TWO";
    }
    return "-NA-";
}

private String getString2(int n){

    if (n == 0) {
        return "ZERO";
    } else if (n == 1) {
        return "ONE";
    } else if(n == 2) {
        return "TWO";
    } else
        return "-NA-";
}

我有上面的方法getString1(int)和getString2(int)。两者的o/p相同。 但是哪一种是最有效的使用方法呢?在性能方面有什么不同吗


共 (1) 个答案

  1. # 1 楼答案

    就cpu时间而言,没有差异。无论如何,编译器可能会将它们优化为完全相同的字节码

    就技术债务而言-一旦真正的开发人员看到此代码并将其替换为:

    private static final String[] numbers = {"ZERO", "ONE", "TWO"};
    
    private String getString(int n) {
        return n >= 0 && n < numbers.length? numbers[n]:"-NA-");
    }
    

    你刚刚花了公司的钱