Java 公共布尔方法中的不可访问语句
因此,我试图创建一个isValid方法来验证某个日期是否真实(即2016年3月31日有效,2001年2月29日有效,因为它是闰年,2016年2月30日无效) 下面是我的方法public boolean isValid() `Java 公共布尔方法中的不可访问语句,java,Java,因此,我试图创建一个isValid方法来验证某个日期是否真实(即2016年3月31日有效,2001年2月29日有效,因为它是闰年,2016年2月30日无效) 下面是我的方法public boolean isValid() ` { //一月 if(month==1&&day在您的第一个if语句中,无论结果如何,它都会返回,这意味着将永远无法达到以下所有if语句,因为如果您的第一个条件未满足,它将返回,如果满足,它也会返回 解决方法是删除所有else-return-false路径,并在else-if
{
//一月
if(month==1&&day在您的第一个if语句中,无论结果如何,它都会返回,这意味着将永远无法达到以下所有if语句,因为如果您的第一个条件未满足,它将返回,如果满足,它也会返回
解决方法是删除所有else-return-false路径,并在else-if链中字符串化all-if语句,然后在该链的末尾返回false
e、 g
您的代码应该是if elseif elseif elseif…else
当你说if和else时,你的代码将以if或else结尾。从今以后,其他if语句将无法访问
这就是您遇到的错误…将其他条件更改为elseif您的代码将永远不会转到第二个if语句,因为第一个if语句的else部分(一月的)将终止您的程序
您的代码必须如下所示:
if(month == 1)
{
if(day <= 31)
return true;
else
return false;
}
if(month==2)
{
----
----
}
if(月==1)
{
如果(天)
否则,您可以使用变量代替直接返回语句,如
public boolean isValid()
{
boolean status=false;
if(condition)
{
status=true;
}
return status;
}
2001年不是闰年……那么我该如何解决这个问题呢?我应该创建12种不同的方法吗?我的bad://shoulda refreshed&&也有不良影响。如果你满意,那么就接受答案,这样人们就知道问题已经解决了:)有一件事,现在它说我缺少返回语句。
if(month == 1)
{
if(day <= 31)
return true;
else
return false;
}
if(month==2)
{
----
----
}
return **statement should be last statement of any method**
public boolean isValid()
{
boolean status=false;
if(condition)
{
status=true;
}
return status;
}