use*_*686 3 java string methods logic boolean
我有以下代码块:
public static boolean isReverse (String s1, String s2) {
if((s1.length()==1)&&s2.length()==1) {
if(s1.equals(s2)) {
return true;
}
}
else if(s1.charAt(0)==s2.charAt(s2.length()-1)) {
return isReverse(s1.substring(1, s1.length()-1),s2.substring(0, s2.length()-2));
}
else return false;
}
Run Code Online (Sandbox Code Playgroud)
我理解通常你需要一个return语句来涵盖if语句都不成立的可能性.这就是为什么我有else return false最后,但我仍然得到错误"必须返回类型布尔的结果".以下是我使用它的电话:
public static void main(String[] args) {
if(isReverse("Java", "avaJ")) {
System.out.println("worked");
}
}
Run Code Online (Sandbox Code Playgroud)
在第if一个中,有可能没有返回声明:
if((s1.length()==1)&&s2.length()==1) {
//What if this is not true?
if(s1.equals(s2)) {
return true;
}
}
Run Code Online (Sandbox Code Playgroud)
在这个块中如果s1不相等s2那么它将跳出if并且由于最后一个return false;链接到else块,它将到达方法的结尾而没有任何返回.
else return false简单地说,而不是解决这个问题return false;
| 归档时间: |
|
| 查看次数: |
91 次 |
| 最近记录: |