哪种方式更快,资源更少:
boolean = !boolean
boolean ^= boolean
Run Code Online (Sandbox Code Playgroud)
编辑:这不是一个基于意见的问题.有一个正确的答案.
我用以下代码测量.
public static void main(String[] args)
{
boolean myVariable = true;
long startTime = 0;
long endTime = 0;
long duration1 = 0;
long duration2 = 0;
for(int i=0; i<1000; i++) {
startTime = System.nanoTime();
myVariable = !myVariable;
endTime = System.nanoTime();
duration1 += (endTime - startTime);
startTime = System.nanoTime();
myVariable ^= myVariable;
endTime = System.nanoTime();
duration2 += (endTime - startTime);
}
System.out.println("The duration for the first operation is :" + (duration1/1000));
System.out.println("The duration for second operation is :" + (duration2/1000));
}
Run Code Online (Sandbox Code Playgroud)
第一次操作的持续时间为:140
第二次操作的持续时间是:123
基于此分析,boolean ^ = boolean比boolean =!boolean更快.
| 归档时间: |
|
| 查看次数: |
391 次 |
| 最近记录: |