Calendar获取时间的月和日

最近想自己用java做一个个人网站.其中一个功能是想通过生日的日期得到它的星座.

由日期得到星座,星座主要由月和日决定.所以想获取日期的月份和日期.一开始使用new Date()测试,并用通过

date.getMonth(),和date.getDay()获取,不过后来发现这两个访求是jdk1.1版本的,现在已经不用了,而且结果也不正确.

所以改用了Calendar

如下

  Calendar rightNow = Calendar.getInstance();

 int month  =rightNow.MONTH;
 int day = rightNow.DAY_OF_MONTH;

结果是month为2,而day为5,和现在的日期4.26没有关系

我然后用System.out.println(rightNow);,不过输出的很多内容里面的MONTH和DAY_OF_MONTH是对的

后来,在网上查找,不能这么用

应该用

 int month  = (date.get(Calendar.MONTH))+1;
        int day = date.get(Calendar.DAY_OF_MONTH);

获取当前的月份和日期

试了一下,果然正确

后来查看java doc文档,MONTH字段解释如下

Field number for get and set indicating the month. This is a calendar-specific value. The first month of the year is JANUARY which is 0; the last depends on the number of months in a year.

这个字段的值只是说明get()的属性字段值,来获取month的

 

以下为获取其它:

Calendar cal = Calendar.getInstance();

        //当前年
        int year = cal.get(Calendar.YEAR);
        //当前月
        int month = (cal.get(Calendar.MONTH))+1;
        //当前月的第几天:即当前日
        int day_of_month = cal.get(Calendar.DAY_OF_MONTH);
        //当前时:HOUR_OF_DAY-24小时制;HOUR-12小时制
        int hour = cal.get(Calendar.HOUR_OF_DAY);
        //当前分
        int minute = cal.get(Calendar.MINUTE);
        //当前秒
        int second = cal.get(Calendar.SECOND);
        //0-上午;1-下午
        int ampm = cal.get(Calendar.AM_PM);
        //当前年的第几周
        int week_of_year = cal.get(Calendar.WEEK_OF_YEAR);
        //当前月的第几周
        int week_of_month = cal.get(Calendar.WEEK_OF_MONTH);
        //当前年的第几天
        int day_of_year = cal.get(Calendar.DAY_OF_YEAR);

看来以后要更仔细的看文档啊...........

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值