如果我有一小段代码,如:
public void tracePath(){
int steps = 0;
steps = bfs();
if(steps==0){
pathFound(false);
System.exit(0);
}else{
System.out.println(steps);
pathFound(true);
System.exit(0);
}
}
AFAIK这可以在没有 else 作为
的情况下重写public void tracePath(){
int steps = 0;
steps = bfs();
if(steps==0){
pathFound(false);
System.exit(0);
}
System.out.println(steps);
pathFound(true);
System.exit(0);
}
是否存在性能(或其他逻辑)原因导致(或丢失) else ?或者只是(在这个例子中)风格选择?
答案 0 :(得分:1)
在这种情况下,它是样式首选项,因为您在if语句的末尾退出。如果你在if的末尾没有system.exit(0),那么在第二个例子中你将执行两段代码。
答案 1 :(得分:1)
我会改为:
public void tracePath(){
int steps = 0;
steps = bfs();
pathFound((!(steps==0)));
System.exit(0);
}
答案 2 :(得分:0)
我会稍微改变一下,对此:
public void tracePath(){
int steps = 0;
steps = bfs();
if(steps==0){
pathFound(false);
}else{
System.out.println(steps);
pathFound(true);
}
System.exit(0);
}
虽然老实说,从名为System.exit
的函数调用tracePath
似乎有点极端。