toIntExact()
方法的语法为:
Math.toIntExact(long value)
在这里, toIntExact()
是静态方法。因此,我们使用类名Math
来访问该方法。
toIntExact()参数
toIntExact()
方法采用单个参数。
- 值 -要作为
int
返回的参数
toIntExact()返回值
- 从指定的
long
值返回int
值
示例1:Java Math.toIntExact()
class Main {
public static void main(String[] args) {
// create long variable
long value1 = 52336L;
long value2 = -445636L;
// change long to int
int num1 = Math.toIntExact(value1);
int num2 = Math.toIntExact(value2);
// print the int value
System.out.println(num1); // 52336
System.out.println(num2); // -445636
}
}
在上面的示例中,我们使用Math.toIntExact()
方法从指定的long
变量中获取一个int
值。
示例2:Math.toIntExact()引发异常
如果返回的int
值不在int
数据类型范围内,则toIntExact()
方法将引发异常。
class Main {
public static void main(String[] args) {
// create a long variable
long value = 32147483648L;
// convert long into int
int num = Math.toIntExact(value);
System.out.println(num);
}
}
在上面的示例中, long
变量的值为32147483648 。当我们将long变量转换为int
,结果值超出了int
数据类型的范围。
因此, toIntExact()
方法将引发integer overflow
异常。
推荐的教程
- Math.addExact()
- Math.incrementExact()