发布日期:2018-03-26
如何在JAVA里安全的将长整型显示转为整型?+ 查看更多
如何在JAVA里安全的将长整型显示转为整型?
+ 查看更多
发布日期:2018-03-08 17:37
分类:JAVA
浏览次数:113
JAVA中,最适合证明在进行长整型显示转为整型时没有损失信息的方法是什么?
public static int safeLongToInt(long l) { int i = (int)l; if ((long)i != l) { throw new IllegalArgumentException(l + " cannot be cast to int without changing its value."); } return i; }解答:现在JAVA8里有一个新的方法
import static java.lang.Math.toIntExact; long foo = 10L; int bar = toIntExact(foo);
还要捕获一个ArithmeticException异常以防溢出
JAVA8中也新增了几个异常捕获方法
Math.incrementExact(long) Math.subtractExact(long, long) Math.decrementExact(long) Math.negateExact(long), Math.subtractExact(int, int)