您的位置:

Java 求绝对值详解

一、Math类求绝对值

在Java中,求绝对值可以使用Math类的abs静态方法,它的参数可以是int、long、float、double类型。下面是使用Math类求绝对值的示例代码:

    int num = -10;
    int absNum = Math.abs(num);
    System.out.println("num = " + num + ", absNum = " + absNum);

执行结果为:

    num = -10, absNum = 10

如果参数是浮点数类型,则返回的是一个double类型的值。示例如下:

    double dNum = -3.14;
    double absDNum = Math.abs(dNum);
    System.out.println("dNum = " + dNum + ", absDNum = " + absDNum);

执行结果为:

    dNum = -3.14, absDNum = 3.14

二、Ternary运算符求绝对值

Java中的Ternary条件运算符可以用来求绝对值,它的语法是variable = expression1 ? expression2 : expression3。其中,expression1必须是一个布尔表达式,如果为true,则返回expression2的值,否则返回expression3的值。下面是使用Ternary运算符求绝对值的示例代码:

    int num = -10;
    int absNum = num < 0 ? -num : num;
    System.out.println("num = " + num + ", absNum = " + absNum);

执行结果为:

    num = -10, absNum = 10

三、自定义方法求绝对值

除了使用Math类和Ternary运算符求绝对值,我们也可以通过自定义方法来实现。下面是一段示例代码:

    public static int getAbs(int num) {
        if(num < 0) {
            return -num;
        } else {
            return num;
        }
    }

    public static void main(String[] args) {
        int num = -10;
        int absNum = getAbs(num);
        System.out.println("num = " + num + ", absNum = " + absNum);
    }

执行结果为:

    num = -10, absNum = 10

四、小结

本文总结了Java中求绝对值的三种方法:使用Math类、Ternary运算符和自定义方法。对于求绝对值没有严格要求精度的场景,建议使用性能最好的Math类的abs方法;对于需要判断的场景,可以使用Ternary运算符;对于复杂场景,可以自定义方法来实现。