应该是这一行,有吧! for (long i =0;i<Integer.MAX_VALUE;i++){totalSum+=i;} 不是太明白,楼主意思
Long totalSum = 0L; long
for (long i =0;i<Integer.MAX_VALUE;i++){totalSum+=i;} 这句变为 int maxValue = Integer.MAX_VALUE; for (long i =0;i<maxValue;i++){totalSum+=i;} 测试一下看是否有性能影响。
把 long 改为 int。因为这里没必要用到 long/LongJava 中 int 特别进行过优优,对于 int 的运算速度远高于 long,甚至比 C++ 中的 int 运算速度快。
for (long i =0;i<Integer.MAX_VALUE;i++){totalSum+=i;} 不是太明白,楼主意思
long
这句变为
int maxValue = Integer.MAX_VALUE;
for (long i =0;i<maxValue;i++){totalSum+=i;}
测试一下看是否有性能影响。
。LZ在看EFFECTIVE JAVA???
把long i=0 改为int i=0 要好些
顶这个 还有 int的
for (long i =Integer.MAX_VALUE;i>-1;i--){totalSum+=i;}
这样会死循环:
long totalSum = 0L; for (int i = 0; i <= Integer.MAX_VALUE; i++) {
totalSum += i;
} System.out.println(totalSum);
s += 1;//s = -2147483648
(1+ Integer.MAX_VALUE)* Integer.MAX_VALUE/2