将if语句转换为Java中的条件运算符

q16*_*749 3 java if-statement

如何使用Java中的条件运算符简化此代码?这是来自博士.梁的Java简介.

public class Test {
    public static void main(String[] args) {
        int i = 3;
        int j = 4;
        int k = max(i, j);
        System.out.println("The max int is " + k);
    }

    public static int max(int num1, int num2) {
        int result;

        if (num1 > num2) {
            result = num1;
        }

        else {
            result = num2;
        }

        return result;

    }
}
Run Code Online (Sandbox Code Playgroud)

Gho*_*ica 5

您可以使用conditinal三元运算符将事物转换为单行:

return (num1 > num2) ? num1 : num2;
Run Code Online (Sandbox Code Playgroud)

但仅仅是为了记录:保持最大方法更好; 只是为了便于阅读.它有助于在自己的方法中使用该功能.

不过,当然:你想了解java.lang.Math.max()它已经提供了准确的是功能(不仅对INT,但所有其它数值基本类型为好)!

所以,真正的答案是:是的,使用一种方法进行检查; 但不要创建自己的版本; 使用默认情况下已经使用Java的那个.换句话说:不要重新发明轮子.即使它只是像这样的小轮子.