大家好,又见面了,我是你们的朋友全栈君。
%操作慎用!!!
本人比赛时遇到的坑,简单的题但是时间超了
public static void main(String[] args) {
//System.currentTimeMillis()
//从1970年01月01日00时00分00秒000毫秒到此刻的毫秒数返回类型是long类型
long time = System.currentTimeMillis();
int a = Integer.MAX_VALUE;
for (int i = 1; i < 100000; i ++) {
for (int j = 1; j < 100000; j ++) {
a = a % 2;
}
}
long itime = System.currentTimeMillis();
long time2 = System.currentTimeMillis();
for (int i = 0; i < 100000 ; i ++) {
for (int j = 1; j < 100000; j ++) {
a = a + 1;
}
}
long itime2 = System.currentTimeMillis();
System.out.println(time);
System.out.println(itime);
System.out.println(time2);
System.out.println(itime2);
System.out.println(a);
}
输出结果如下:
time : 1636903381528
itime :1636903392879
time: 21636903392879
itime :21636903392879
a : 1409965409
可以看到运用了%运算,耗时慢了10秒
坑!!!
打比赛的小伙伴一定要慎用%运算
| 和 & 也有一定的耗时
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/134285.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...