【发布时间】:2021-05-27 21:18:52
【问题描述】:
谁能解释一下?
class Main{
static String CountAndSay(int n)
{
if (n==1){
return "1";
}
if(n==2)
{
return "11";
}
}
public static void main (String[] args)
{
System.out.println(CountAndSay(1));
}
}
Ans:- Main.java:12: 错误:缺少返回语句 } ^
但是当我在 if 语句之后编写 return 语句时它正在工作。
class Main{
static String CountAndSay(int n)
{
if (n==1){
return "1";
}
if(n==2)
{
return "11";
}
return "0";
}
public static void main (String[] args)
{
System.out.println(CountAndSay(1));
}
}
答案:- 1
【问题讨论】:
-
具有非 void 返回类型的方法需要返回一些东西。有什么好解释的。
-
想想吧。在您的第一种方法中,
n既不是 1 也不是 2 时返回什么? -
试想一下如果 n 的值是 3 会发生什么,该函数不能返回任何东西。所以请确保在所有条件分支中都有 return 语句。
标签: java if-statement return