Java Math abs() 方法和示例
绝对值是指与作为参数传递的数字相对应的正值。现在,极客你一定想知道它到底是什么意思,所以无论传递给计算的是正数还是负数,它都会被引用,在这两种情况下,计算都将发生在对应的正数上。因此,为了计算任何数字的绝对值,我们在Java中确实有一个指定的方法,称为abs()存在于Java.lang 包中的 Math 类中。
Java.lang.Math.abs()返回给定参数的绝对值。
- 如果参数不是负数,则返回参数。
- 如果参数是否定的,则返回参数的否定。
句法 :
public static DataType abs(DataType a)
参数: Int、long、float或double值,其绝对值待确定
返回类型:此方法返回参数的绝对值。
抛出的异常:算术异常
Tip: One must be aware of generic return type as follows:
- If the argument is of double or float type:
- If the argument is positive zero or negative zero, the result is positive zero.
- If the argument is infinite, the result is positive infinity.
- If the argument is NaN, the result is NaN.
- If the argument is of int or long type: If the argument is equal to the value of Integer.MIN_VALUE or Long.MIN_VALUE, the most negative representable int or long value, the result is that same value, which is negative.
示例 1:
Java
// Java Program to Illustrate Absolute Method
// of Math Class
// Importing all Math classes
// from java.lang package
import java.lang.Math;
// Main class
class GFG {
// Main driver method
public static void main(String[] args)
{
// Custom integer input received from user
int n = -7;
// Printing value before applying absolute function
System.out.println(
"Without applying Math.abs() method : " + n);
// Applying absolute math function and
// storing it in integer variable
int value = Math.abs(n);
// Printing value after applying absolute function
System.out.println(
"With applying Math.abs() method : " + value);
}
}
Java
// Java Program to Demonstrate Working of abs() method
// of Math class inside java.lang package
// Importing Math class
// from java.lang package
import java.lang.Math;
// Main class
class GFG {
// Main driver method
public static void main(String args[])
{
// Customly declaring and initializing all
// arguments that ans() function takes
// Float
float a = 123.0f;
float b = -34.2323f;
// Double
double c = -0.0;
double d = -999.3456;
// Integer
int e = -123;
int f = -0;
// Long
long g = -12345678;
long h = 98765433;
// abs() method taking float type as input
System.out.println(Math.abs(a));
System.out.println(Math.abs(b));
// abs() method taking double type as input
System.out.println(Math.abs(1.0 / 0));
System.out.println(Math.abs(c));
System.out.println(Math.abs(d));
// abs() method taking int type as input
System.out.println(Math.abs(e));
System.out.println(Math.abs(f));
System.out.println(Math.abs(Integer.MIN_VALUE));
// abs() method taking long type as input
System.out.println(Math.abs(g));
System.out.println(Math.abs(h));
System.out.println(Math.abs(Long.MIN_VALUE));
}
}
输出
Without applying Math.abs() method : -7
With applying Math.abs() method : 7
示例 2:
Java
// Java Program to Demonstrate Working of abs() method
// of Math class inside java.lang package
// Importing Math class
// from java.lang package
import java.lang.Math;
// Main class
class GFG {
// Main driver method
public static void main(String args[])
{
// Customly declaring and initializing all
// arguments that ans() function takes
// Float
float a = 123.0f;
float b = -34.2323f;
// Double
double c = -0.0;
double d = -999.3456;
// Integer
int e = -123;
int f = -0;
// Long
long g = -12345678;
long h = 98765433;
// abs() method taking float type as input
System.out.println(Math.abs(a));
System.out.println(Math.abs(b));
// abs() method taking double type as input
System.out.println(Math.abs(1.0 / 0));
System.out.println(Math.abs(c));
System.out.println(Math.abs(d));
// abs() method taking int type as input
System.out.println(Math.abs(e));
System.out.println(Math.abs(f));
System.out.println(Math.abs(Integer.MIN_VALUE));
// abs() method taking long type as input
System.out.println(Math.abs(g));
System.out.println(Math.abs(h));
System.out.println(Math.abs(Long.MIN_VALUE));
}
}
输出
123.0
34.2323
Infinity
0.0
999.3456
123
0
-2147483648
12345678
98765433
-9223372036854775808