迷茫2017-04-18 09:27:39
如果追求可读性,这样写:
pubilc Object get() {
if () {
return A;
}
if () {
return B;
}
return C;
}
伊谢尔伦2017-04-18 09:27:39
除了可读性差点,没什么问题,一个方法有可能根据不同情况返回不同的结果,但每次调用都只会返回其中一种结果。
有种比较好的写法是,在方法体内优先处理异常分支,尽早返回异常结果。
pubilc Object get(){
//第一个if对应题目中的最后一个else
if(invalidResult1) {
return null;
}
//第二个if对应题目中倒数第二个else
if(invalidResult2) {
return null;
}
//对应题目中第二个if
return succesResult;
}
阿神2017-04-18 09:27:39
有一个关键点是,一个方法一次调用只会返回一次。如果你的方法有可能返回两次是编译不通过的。因为方法返回了值,那就表示方法已经到达终点,程序就会走出这个方法。
大家讲道理2017-04-18 09:27:39
我认为应该是这样子的
pubilc Object get(){
Object obj=null;
if(){
if(){
obj=x;
}else{
obj=xx;
}
}else{
obj=xxx;
}
return obj;
}