Java中日历类(CalendarClass)的用途?

 我来答
育知同创教育
2016-03-05 · 百度知道合伙人官方认证企业
育知同创教育
1【专注:Python+人工智能|Java大数据|HTML5培训】 2【免费提供名师直播课堂、公开课及视频教程】 3【地址:北京市昌平区三旗百汇物美大卖场2层,微信公众号:yuzhitc】
向TA提问
展开全部

    Java中日历类(Calendar类)的用途如下:

    Calendar类的静态方法getInstance()可以初始化一个日历对象:Calendar now =         Calendar.getInstance();    

    可以使用下面三个方法把日历定到任何一个时间:

     set(int year ,int month,int date)  ;
     set(int year ,int month,int date,int hour,int minute) ;
     set(int year ,int month,int date,int hour,int minute,int second) ;

    如果想获得年份、月份、小时等信息可以使用:  

      Now.get(Calendar.Month);//这样的方法 0表示一月,1表示二月  
     get(Calendar.DAY_OF_MONTH);//获得这个月的第几天
     get(Calendar.DAY_OF_WEEK);//获得这个星期的第几天 
     get(Calendar.DAY_OF_YEAR);//获得这个年的第几天  
       getTimeMillis();//获得当前时间的毫秒表示

    1.计算某一月份的最大天数

    Calendar time=Calendar.getInstance(); 
    time.clear(); 
    time.set(Calendar.YEAR,year); 
    time.set(Calendar.MONTH,i-1);//注意,Calendar对象默认一月为0             
    int day=time.getActualMaximum(Calendar.DAY_OF_MONTH);//本月份的天数


    注:在使用set方法之前,必须先clear一下,否则很多信息会继承自系统当前时间
    2.Calendar和Date的转化
    (1) Calendar转化为Date

    Calendar cal=Calendar.getInstance();
    Date date=cal.getTime();


    (2) Date转化为Calendar

    Date date=new Date();
    Calendar cal=Calendar.getInstance();
    cal.setTime(date);


    3.格式化输出日期时间

    Date date=new Date();
    SimpleDateFormat df=new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
    System.out.println(df.format(date));

    4.计算相隔天数的方法

    public int getDaysBetween (Calendar d1, Calendar d2){
      if (d1.after(d2)){  // swap dates so that d1 is start and d2 is end
           java.util.Calendar swap = d1;
           d1 = d2;
           d2 = swap;
      }
      int days = d2.get(Calendar.DAY_OF_YEAR) - d1.get(Calendar.DAY_OF_YEAR);
      int y2 = d2.get(Calendar.YEAR);
     if (d1.get(Calendar.YEAR) != y2){
           d1 = (Calendar) d1.clone();
           do{
             days += d1.getActualMaximum(Calendar.DAY_OF_YEAR);//得到当年的实际天数
               d1.add(Calendar.YEAR, 1);
          } while (d1.get(Calendar.YEAR) != y2);
      }
       return days;
    }
普篮0201
2015-08-27 · TA获得超过176个赞
知道答主
回答量:128
采纳率:0%
帮助的人:165万
展开全部
Calendar类在Java中用于处理日期。Calendar类提供了增加和减少天数、月数和年数的简便方法。它还提供了很多与日期有关的细节(这一年的哪一天?哪一周?等等)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
1997排长
高粉答主

2016-01-09 · 说的都是干货,快来关注
知道大有可为答主
回答量:1.1万
采纳率:0%
帮助的人:822万
展开全部
java.util.Calendar.getActualMaximum() 方法返回基于此Calendar的时间值,指定日历字段可能拥有的最大值。
示例演示java.util.calendar.getActualMaximum()方法的用法。

import java.util.*;

public class CalendarDemo {

public static void main(String[] args) {

// create a calendar
Calendar cal = Calendar.getInstance();

// get the maximum value that year field can have
int i = cal.getActualMaximum(Calendar.YEAR);
System.out.println("Maximum year:" + i);

// get the maximum value that month field can have
int a = cal.getActualMaximum(Calendar.MONTH);
System.out.println("Maximum month:" + a);
}
}

编译和运行上面的程序,这将产生以下结果:
Maximum year:292278994
Maximum month:11
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式