%操作慎用!!! 本人比赛时遇到的坑,简单的题但是时间超了
public static void main(String[] args) {
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秒
坑!!!
打比赛的小伙伴一定要慎用%运算
| 和 & 也有一定的耗时
|