import java.util.*;
public class LeapYear
{
public static void main (String[]args)
{
Scanner scan= new Scanner (System.in);
System.out.println("Please enter in the year");
int year=scan.nextInt();
if (year % 4 ==0)
{
{
if (year % 100 ==0);
else
System.out.println("The year,"+year+",is a leap year!");
}
if(year % 400==0)
System.out.println("The year, "+year+",is a leap year!");
}
else
System.out.println("The year, "+year+",is not a leap year!");
}
}
嘿大家好!以上是我为闰年程序编写的代码 - 它似乎运行良好,除非输入数字(如3000或300),否则JVM会停止并关闭终端窗口。有人请指导为什么它不接受这些数字(另外,请原谅我的代码格式不正确 - 我是新的,并尽力做到最好) 注意:它显示所有正确的答案时我测试了1900年,1996年,2004年,164年和204年。它不会接受300或3000. 再次感谢!闰年计划
一条建议,特别是学习Java时,在if语句之后的所有大括号中添加一条建议。如果你有空的if语句和if语句结束的地方,它会使它更清晰。 – mdewitt 2014-10-01 01:30:21
看来你需要阅读更多关于'||'(或),'&&'(和),'!'(不)或逻辑运算符像'!='(不等于)的关系。这可以让你创建像'if(year%X == 0 ||(year%Y == 0 && year%Z!= 0)'这样的表达式) - 试着找出应该用什么值代替'X ''Y'和'Z'所以它可以解决你的任务。 – Pshemo 2014-10-01 01:44:09
供参考:'java.time.Year(2017).isLeap()' – 2017-06-21 06:32:48