首页 > 解决方案 > java中的数学问题试图找出我的代码有什么问题

问题描述

所以代码有效,但有些年份应该是闰年,但不像 2008 年那样显示它不是闰年。

//is leap year if...
      if ((whichYear % 4 == 0) && (whichYear % 100 == 0) && (whichYear % 400 == 0))      
         {
          isLeapYear = true;
          daysLeftInYear = 366;                          
          System.out.println("true " + daysLeftInYear);
         } 

         else 
              {
               isLeapYear = false;
               daysLeftInYear = 365;
               System.out.println("false " + daysLeftInYear);
              }

标签: java

解决方案


最简单的方法是将其分解为两种可能性。

If (year % 100 == 0) {
  // if century year
} else {
  // if not century year.
}

The rest is up to you.




推荐阅读