因为要做一个排行榜,必须算出某一天的是第几周。用java实现,多谢帮忙

解决方案 »

  1.   

     int     n;   
              GregorianCalendar cal = new GregorianCalendar();
              Calendar da=Calendar.getInstance();
              n=cal.get(GregorianCalendar.DAY_OF_WEEK)-1;
              int d=da.get(Calendar.DATE);
              if   (n==0)   n   =   7;   //今天星期几   
              d   =   d   -   (n-1);   //这个星期一是几号   
              for(n=1;   d>1;   d-=7)   n+=1;   
             System.out.println(n);  
      

  2.   


    public int getWeekIndexForYear(Date date) {
    Calendar c = new GregorianCalendar(date.getYear(), date.getMonth(),
    date.getDate());
    return c.get(Calendar.WEEK_OF_YEAR);
    }public int getWeekIndexForMonth(Date date) {
    Calendar c = new GregorianCalendar(date.getYear(), date.getMonth(),
    date.getDate());
    return c.get(Calendar.WEEK_OF_MONTH);
    }
      

  3.   


    GregorianCalendar cal = new GregorianCalendar();[
    System.out.println("今天是本月第:"+cal.get(GregorianCalendar.WEEK_OF_MONTH)+"周");
              System.out.println("今天是本年第:"+cal.get(GregorianCalendar.WEEK_OF_YEAR)+"周");
      

  4.   

    public class test{
          public static void main(String[] args){
                java.util.Calendar c=java.util.Calendar.getInstance();
                c.set(2007,10,6);//设置为2007年11月6号
                System.out.println(c.getTime());
                System.out.println(c.get(java.util.Calendar.WEEK_OF_YEAR));//获得c代表的日期在当年是第几周
                System.out.println(c.get(java.util.Calendar.WEEK_OF_MONTH));//获得c代表的日期在当月是第几周
          }
    }关于Calendar更多的用法,参考jdk api文档