随便给你一个日期例如2009 8 20问这一天是否是星期六

解决方案 »

  1.   

    import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Date;import java.io.*; class test{      public final static String dayNames[] = {         "星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"};      public static Date getdate(String date) throws Exception {       SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");       return sdf.parse(date);     }      public static void main(String[] args) throws Exception {       char k;       do{       System.out.print("请输入日期");       BufferedReader br = new BufferedReader(new InputStreamReader(System.in));       String d = br.readLine();       Calendar calendar = Calendar.getInstance();       calendar.setTime(getdate(d));       int dayOfWeek = calendar.get(Calendar.DAY_OF_WEEK);       System.out.println(dayNames[dayOfWeek - 1]);   System.out.println("是否继续判断y代表是n代表退出");  BufferedReader br1 = new BufferedReader(new InputStreamReader(System.in));  k=(char)br1.read();     }while(k=='y');     System.out.println("已退出判断"); //可以将现在的时间输出            SimpleDateFormat currentDateTime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss "); System.out.println("完成编译时间为:"+currentDateTime.format(new Date()));   } }
      

  2.   


    public static void main(String[] args) {
    // TODO Auto-generated method stub
    System.out.println();
    if(weekDay(2009,9,20) == 6){
    System.out.println("true");
    }else{
    System.out.println("false");
    }
    }

    public static int weekDay(int year,int month,int day){
    Calendar c = Calendar.getInstance();
    c.set(year, month-1, day);
    int week = c.get(Calendar.DAY_OF_WEEK);
    if(week == 1){
    return week+6;
    }
    return week-1;
    }
      

  3.   

    [Quote=引用 2 楼 lovehuaihaibo 的回复:]
    Java codepublicstaticvoid main(String[] args) {// TODO Auto-generated method stub        System.out.println();if(weekDay(2009,9,20)==6){
                System.out.println("true");
            }else{
            ¡­
    [/Quote
      

  4.   


    <script language="javascript" type="text/javascript">  function   fngetday(year,month,date)   
      {   
        var   keystr = "622503514624";
        var   deltmonth   =   parseInt(keystr.substr(month-1,1));   
        var   deltyear   =   (year-2000)+Math.ceil((year-2000)/4);   
        deltyear   +=   (year-Math.floor(year/4)*4==0   &&   month   >2   ?   1:0);   
        var   deltdate   =   date-1;   
        return   (deltmonth+deltyear+deltdate)   -   Math.floor((deltmonth+deltyear+deltdate)/7)*7;   
      } 
      document.write(fngetday(2008,2,19));
    </script>
      

  5.   

    判断星期6的话就是<script language="javascript" type="text/javascript">  function   fngetday(year,month,date)   
      {   
        var   keystr = "622503514624";
        var   deltmonth   =   parseInt(keystr.substr(month-1,1));   
        var   deltyear   =   (year-2000)+Math.ceil((year-2000)/4);   
        deltyear   +=   (year-Math.floor(year/4)*4==0   &&   month   >2   ?   1:0);   
        var   deltdate   =   date-1;   
        return   (deltmonth+deltyear+deltdate)   -   Math.floor((deltmonth+deltyear+deltdate)/7)*7;   
      } 
      if(fngetday(2009,9,15)==6) alert("是星期6");
    </script>
      

  6.   

    谢谢各位了,找到答案了!
    W= (d+2*m+3*(m+1)/5+y+y/4-y/100+y/400) mod 7  在公式中d表示日期中的日数,m表示月份数,y表示年数。注意:在公式中有个与其他公式不同的地方: 把一月和二月看成是上一年的十三月和十四月,例:如果是2004-1-10则换算成:2003-13-10来代入公式计算。
     // java code
      //y-年,m-月,d-日期
      string CaculateWeekDay(int y,int m, int d)
      {
      if(m==1||m==2) {
      m+=12;
      y--;
      }
      int week=(d+2*m+3*(m+1)/5+y+y/4-y/100+y/400)%7; 
      string weekstr="";
      switch(week)
      {
      case 0: weekstr="星期一"; break;
      case 1: weekstr="星期二"; break;
      case 2: weekstr="星期三"; break;
      case 3: weekstr="星期四"; break;
      case 4: weekstr="星期五"; break;
      case 5: weekstr="星期六"; break;
      case 6: weekstr="星期日"; break;
      }
      return weekstr; 
      }