下面是兩個片段。注意程序之間的唯一區別在於一個break to return
和另一個return
立即。我知道在一個方法中有一個退出點是很好的設計實踐。但我並不擔心這裏的設計。如果我使用break
支付額外費用,我會付多少額外的計算/內存/時鐘週期?打破vs從循環內返回
計劃之一:
public boolean doThis(String[] A){
boolean indicator = false;
for(int i=0; i<A.length; i++){
if(A[i].equals("Taboo"))
break;
for(int x=0; x<=i; x++)
//some work is done here. to make indicator true or false
}
return indicator;
}
方案二:
public boolean doThis(String[] A){
boolean indicator = false;
for(int i=0; i<A.length; i++){
if(A[i].equals("Taboo"))
return false;
for(int x=0; x<=i; x++)
//some work is done here. to make indicator true or false
}
return indicator;
}
我不想優化。我正在努力加深我的理解。 +1爲您解釋。 – kasavbere