UTIL包,   public static void main(String[] args) {
       Date aa=new Date(2004,11,17);
       System.out.println(aa.getDay());
       
    }方法应该没错,不过结果却不对,郁闷.看看别人怎么说.

解决方案 »

  1.   

    String s="2004-11-17";
    DateFormat df=new SimpleDateFormat("yyyy-MM-dd");
    Date d=df.parse(s);
    System.out.println(d.getDay());
      

  2.   

    to skylovers
    这样就可以了
       public static void main(String[] args) {
           Date aa=new Date(2004-1900,11-1,17);
           System.out.println(aa.getDay());
           
        }
      

  3.   

    GregorianCalendar obj = new GregorianCalendar(); 
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");
    java.util.Date dd = new java.util.Date();
    obj.setTime(dd);
    int week = obj.get(GregorianCalendar.DAY_OF_WEEK);其实不用这么复杂。返回值week是从星期天开始算起,这点要自己处理一下了。
      

  4.   

    因为Date很多方法都别deprecated了,推荐下面的实现。String s="2004-11-17";
    DateFormat df=new SimpleDateFormat("yyyy-MM-dd");
    Calendar c=Calendar.getInstance();
    c.setTime(df.parse(s));
    c.setFirstDayOfWeek(Calendar.MONDAY);
    int day=c.get(Calendar.DAY_OF_WEEK);
    返回1表示星期天,2表示星期一
    可以用常量表示
    Calendar.SUNDAY,Calendar.MONDAY等等