我做了一个这样的基准:
for (int i = 0; i < 1000 * 1000; ++i) {
long var = System.nanoTime();
}
我的电脑用 jdk6.0 需要 41 毫秒
以下代码仅需 1 毫秒!!!
for (int i = 0; i < 1000 * 1000; ++i) {
System.nanoTime();
}
我认为可能是 long var 花费了时间,所以我进行了这样的测试:
for (int i = 0; i < 1000 * 1000; ++i) {
long var = i;
}
只需1毫秒!!!
那么,为什么第一个代码块这么慢?我是中国人。对不起我的英语不好!