[Java] Java根据基姆拉尔森公式计算当前日期是星期几 →→→→→进入此内容的聊天室

来自 , 2019-04-23, 写在 Java, 查看 103 次.
URL http://www.code666.cn/view/c4b8bb99
  1. public class TestXingqiji
  2. {
  3.      /**
  4.       * 计算某天星期几
  5.       * 在計算此問題上比較常用的還是基姆拉尔森计算公式(具體介紹可在網上搜索)
  6.           W= (d+2*m+3*(m+1)/5+y+y/4-y/100+y/400) mod 7
  7.           d 天
  8.           m 月
  9.           y 年
  10.          1月2月换算为去年的13、14月计算,也即2007年的1月和2月在公式中體現為2006年的13和14月,
  11.                           雖然與實際不符但這是邏輯的需要。
  12.       * @param y 年
  13.       * @param m 月
  14.       * @param d 日
  15.       * @return
  16.       */
  17.      public static String suan(int y,int m,int d)
  18.      {
  19.           if(m==1) {m=13;y--;}
  20.           if(m==2) {m=14;y--;}
  21.           int week=(d+2*m+3*(m+1)/5+y+y/4-y/100+y/400)%7;
  22.           String weekstr="";
  23.           switch(week)
  24.           {
  25.               case 0: weekstr="一"; break;
  26.               case 1: weekstr="二"; break;
  27.               case 2: weekstr="三"; break;
  28.               case 3: weekstr="四"; break;
  29.               case 4: weekstr="五"; break;
  30.               case 5: weekstr="六"; break;
  31.               case 6: weekstr="日"; break;
  32.            }
  33.            return weekstr;  
  34.       }
  35.      
  36.      public static void main(String[] args) {
  37.          System.out.print(suan(2012,1,31));
  38.      }
  39. }
  40. //java/8497

回复 "Java根据基姆拉尔森公式计算当前日期是星期几"

这儿你可以回复上面这条便签

captcha