代码如下
public String driver(String str) {
// TODO Auto-generated method stub
if(str.equals("audi"))
return new audi().drive();
else if(str.equals("chery"))
return ""+str;
else if(str.equals("bmw"))
return ""+str;
else if(str.equals("Benz"))
return ""+str;
}
这已经return 了,为啥还要return?
public String driver(String str) {
// TODO Auto-generated method stub
if(str.equals("audi"))
return new audi().drive();
else if(str.equals("chery"))
return ""+str;
else if(str.equals("bmw"))
return ""+str;
else if(str.equals("Benz"))
return ""+str;
}
这已经return 了,为啥还要return?
但是 我加过 return 后我传个audi
执行的是最后的那个return 语句。
else return "";这样就不会报错了原因就是2楼说的。
最后结果是正确了
但是会在最后出现个Null开bmw
null
else{
return ***;
}
不然如果传进去的str没有符合任何一个判断的话就没return了。
另外一种处理方式是放在switch case语句里面,在其最后加个default,程序的可读性会强很多。
public String driver(String str) {
// TODO Auto-generated method stub
if(str.equals("audi")){
return new audi().drive();
}else{
if(str.equals("chery")){
return ""+str;
}else{
if(str.equals("bmw")){
return ""+str;
}else{
if(str.equals("Benz")){
return ""+str;
}else{
--------
}
}
}
}
}
你if语句接下去判断情况的话,一定要判断完毕额所以最后要接一个
else {
return "" ;
}
要么 加个
else{
return null;//要求返回值是String类型
}
要么
直接return null;或return;就好。这种东西,想想,在自己测试下就好。