因此,我在If else语句上创建了LeapYearCal,我学习了switch语句,我想使用switch重新创建它。
不知何故,我的跳转条件正在工作,但是我想添加条件,例如value必须在1-9999中,否则它将返回false。但是当我的代码不正确时,如何解决该问题?
public static boolean isLeapYear(int year)
{
switch ( year % 4)
{
case 0:
if (year % 100 == 0)
{
if ( (year % 400 == 0) )
{
if (year > 0)
{
if (year <= 9999)
{
return true;
}
else
return false;
}
else
return false;
}
else
return false;
}
else
return true;
default:
break;
}
return false;
如果年份是Le年并且范围是1-9999,我想输出“ True”,否则,如果它不在范围内,则不管结果是leap年,都是“ False”
最佳答案
在此用例中使用switch-case语句是不合适的。该解决方案基于this code:
public static boolean isLeapYear(int year){
boolean flag = false;
if (year > 0 && year < 10000)
{
flag = false;
}
else if(year % 400 == 0)
{
flag = true;
}
else if (year % 100 == 0)
{
flag = false;
}
else if(year % 4 == 0)
{
flag = true;
}
else
{
flag = false;
}
return flag;
}
关于java - 我的代码在添加条件1-9999的条件下无法使用switch语句工作,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/57093267/