哪种方式更快,资源更少:
boolean = !boolean
boolean ^= boolean
编辑:这不是基于意见的问题。有一个正确的答案。
答案 0 :(得分:6)
我用以下代码测量。
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));
}
第一次操作的持续时间为:140
第二次操作的持续时间为:123
基于此分析,boolean ^ = boolean比boolean =!boolean快。
答案 1 :(得分:1)
if (typeof anObject +AD0APQA9- 'undefined') +AHs-
var anObject +AD0- +AHsAfQA7-
+AH0-
anObject.childObject +AD0- +AHs-
init:function myFunction() +AHs-
//code
+AH0-
+AH0-
SP.SOD.executeOrDelayUntilEventNotified(anObject.childObject.init, 'sp.bodyloaded')+ADs-
可能更好,因为它更容易阅读。两者都不是精确的资源密集型,因此使用其中任何一个都不会真正改变性能。