关于周的计算

来源:互联网 发布:键盘组合键软件 编辑:程序博客网 时间:2024/04/29 11:43
 

package com.sais.inkaNet.reportStatistics.operationBeanavior.service;


import java.util.Calendar;
import java.util.LinkedHashMap;
import java.util.Map;

 


public class FindWeek {
    private  Map<String,String> week;
 

 public Map<String, String> getWeek() {
  return week;
 }

 public void setWeek(Map<String, String> week) {
  this.week = week;
 }

 /**
  * @param args
  */
 public  void main(String[] args) {
  
  getMonthWeek(2011,7);
  
 }
 //根据年、月、和月的第几周,得到这是哪年的第几周

 public  int getFirstDate(int year,int month,int week) {

  Calendar c = Calendar.getInstance();
  c.set(Calendar.YEAR, year);
  c.set(Calendar.MONTH, month-1);
  c.set(Calendar.WEEK_OF_MONTH, week);
  //String day2=new SimpleDateFormat("yyyy-MM-dd").format(c.getTime());
  

  //System.out.print(day2);
  return c.get(Calendar.WEEK_OF_YEAR);
  }

 

//计算出哪年的那月有几周

 public  Map<String,String> getMonthWeek(int year,int month){

     Calendar c = Calendar.getInstance(); 
        c.set(Calendar.YEAR, year); // 2010年  
        c.set(Calendar.MONTH, month-1); // 6 月  
//        System.out.println("------------" + c.get(Calendar.YEAR) + "年" + (c.get(Calendar.MONTH)+1 ) + "月的天数和周数-------------"); 
//        System.out.println("天数:" + c.getActualMaximum(Calendar.DAY_OF_MONTH)); 
        System.out.println("周数:" + c.getActualMaximum(Calendar.WEEK_OF_MONTH));
       // return c.getActualMaximum(Calendar.WEEK_OF_MONTH);
        int tem= Integer.valueOf(c.getActualMaximum(Calendar.WEEK_OF_MONTH));
        week = new LinkedHashMap<String,String>();
        for(int i=1;i<=tem;i++){
         week.put("0"+i, String.valueOf(i));
        }
        return week;
    }

 

}

原创粉丝点击