java整形常量相乘溢出问题及解决办法

public void main() {
        Object i = 1525767992 * 1000;
        Object l = 1525767992 * 1000l;
        System.out.println(i.getClass() + ":" + i);
        System.out.println(l.getClass() + ":" + l);
    }

输出

class java.lang.Integer:1054601920
class java.lang.Long:1525767992000
其中

Object l = 1525767992 * 1000l;

1000后面加了个字符l, 标识1000是long类型,这样相称以后,会转变到long类型存储,避免溢出

猜你喜欢

转载自blog.csdn.net/hknaruto/article/details/80241827