Java Math.toIntExact() 方法

java.lang.Math.toIntExact() 把指定long转化为int值返回。如果结果溢出int或long,则将引发异常。

1 语法

public static int toIntExact (long a)  

2 参数

a :long值

3 返回值

将输入参数转化为int返回。  

  • 如果参数为Long.MAX_VALUE或Long.MIN_VALUE,则将引发ArithmeticException。

4 示例1

package com.yiidian;

/**
 * 一点教程网: http://www.yiidian.com
 */
public class Demo
{
    public static void main(String[] args)
    {
        long a = 230;
        System.out.println(Math.toIntExact(a));
    }
}

输出结果为:

230

5 示例2

package com.yiidian;

/**
 * 一点教程网: http://www.yiidian.com
 */
public class Demo
{
    public static void main(String[] args)
    {
        long a = -829;
        System.out.println(Math.toIntExact(a));
    }
}

输出结果为:

-829

6 示例3

package com.yiidian;

/**
 * 一点教程网: http://www.yiidian.com
 */
public class Demo
{
    public static void main(String[] args)
    {
        long a = Long.MAX_VALUE;
        System.out.println(Math.toIntExact(a));
    }
}

输出结果为:

Exception in thread "main" java.lang.ArithmeticException: integer overflow
	at java.lang.Math.toIntExact(Math.java:1011)
	at com.yiidian.Demo.main(Demo.java:11)

7 示例4

package com.yiidian;

/**
 * 一点教程网: http://www.yiidian.com
 */
public class Demo
{
    public static void main(String[] args)
    {
        long a = Long.MIN_VALUE;
        System.out.println(Math.toIntExact(a));
    }
}

输出结果为:

Exception in thread "main" java.lang.ArithmeticException: integer overflow
	at java.lang.Math.toIntExact(Math.java:1011)
	at com.yiidian.Demo.main(Demo.java:11)

 

热门文章

优秀文章