Java Math.decrementExact() 方法

java.lang.Math.decrementExact() 返回参数值减一。结果溢出时抛出ArithmeticException 异常。

1 语法

public static int DecrementExact (int a)   
public static long decrementExact (long a)  

2 参数

a :要减少的值 

3 返回值

返回参数值减一。

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

4 示例1

package com.yiidian;

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

输出结果为:

829

5 示例2

package com.yiidian;

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

输出结果为:

-382

6 示例3

package com.yiidian;

/**
 * 一点教程网: http://www.yiidian.com
 */
public class Demo
{
    public static void main(String[] args)
    {
        int a = Integer.MIN_VALUE;
        // 输入int溢出,输出ArithmeticException
        System.out.println(Math.decrementExact(a));
    }
}

输出结果为:

Exception in thread "main" java.lang.ArithmeticException: integer overflow
	at java.lang.Math.decrementExact(Math.java:943)
	at com.yiidian.Demo.main(Demo.java:12)

7 示例4

package com.yiidian;

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

输出结果为:

Exception in thread "main" java.lang.ArithmeticException: long overflow
	at java.lang.Math.decrementExact(Math.java:960)
	at com.yiidian.Demo.main(Demo.java:12)

 

热门文章

优秀文章