一年是闰年,如果它可以被4整除而不能被100整除,但如果它可以被400整除则总是一年.你可以将其翻译成代码:
int year = 2004;
boolean leap = ((year % 4 == 0) && (year % 100 != 0)) || (year % 400 == 0);
Run Code Online (Sandbox Code Playgroud)
模数运算符(%)在分割数字时给出余数,因此等于0第一个数字可被第二个整除.
正如Bathsheba指出的那样,这只适用于格里高利历(我们的现代系统自1582年以来在某些国家甚至更晚的其他国家),如果你想要在这个日期之前处理数年,代码将会复杂得多并且需要对当时的确切规则进行一些研究.但是,在考试中,您不必担心这些问题.