下面是两个片段。请注意程序之间的唯一区别是一个break to return
和另一个return
立即。我知道在方法中设置一个退出点是一种很好的设计实践。但我不担心这里的设计。如果我为使用支付额外费用,我需要支付break
多少额外的计算/内存/时钟周期?
方案一:
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;
}