美文网首页
Calendar常用方法

Calendar常用方法

作者: zizi192 | 来源:发表于2017-07-21 15:38 被阅读0次

Calendar使用方法

抽象Calendar类提供了一组方法,这些方法允许将以毫秒为单位的时间转换为一组有用的分量。可以提供信息的类型包括:年,月,日,时,分和秒。推荐使用Calendar来处理日期和时间

Calendar常用方法如下:

/**
 * Constructs a new instance of the {@code Calendar} subclass appropriate for the
 * default {@code Locale} and default {@code TimeZone}, set to the current date and time.
 */
Calendar calendar = Calendar.getInstance();

//获取年月日时分秒
calendar .get(Calendar.YEAR);
calendar .get(Calendar.MONTH) ;  // 0-11,分别表示1-12月
calendar .get(Calendar.DATE);  //1-31
calendar .get(Calendar.HOUR_OF_DAY);  //24小时制
calendar .get(Calendar.MINUTE);  
calendar .get(Calendar.SECOND);

//设置年月日时分秒
calendar .set(Calendar.HOUR_OF_DAY, 17);
calendar .set(Calendar.MINUTE, 30);

//获取明天的日历信息
calendar .add(Calendar.DAY_OF_YEAR, 1);
//获取昨天的日历信息
calendar .add(Calendar.DAY_OF_YEAR, -1);

//获取当前时间的毫秒显示
calendar .getTimeInMillis()

//常用field
Calendar.YEAR——年份
Calendar.MONTH——月份
Calendar.DATE——日期
Calendar.DAY_OF_MONTH——日期,和上面的字段完全相同
Calendar.HOUR——12小时制的小时数
Calendar.HOUR_OF_DAY——24小时制的小时数
Calendar.MINUTE——分钟
Calendar.SECOND——秒
Calendar.DAY_OF_WEEK——星期几

Calendar也可以用来做时间的比较,示例如下:

public static boolean isBeforeCurrentTime(int year, int month, int day, int hour, int mininute){
    Calendar spec = Calendar.getInstance();
    spec.set(Calendar.YEAR, year);
    spec.set(Calendar.MONTH, month);
    spec.set(Calendar.DAY_OF_MONTH, day);
    spec.set(Calendar.HOUR_OF_DAY, hour);
    spec.set(Calendar.MINUTE, mininute);

    boolean ret = false;
    Calendar current = Calendar.getInstance();

    if (spec.compareTo(current) <= 0){
        ret = true;
    }

    return ret;
}

GregorianCalendar是Calendar的一个实现,大家熟悉的标准日历(格列高利历)的具体工具。Calendar的getInstance( )方法返回默认的GregorianCalendar实例。

可以使用add方法,来修改指定域的值。方法定义如下,其中int的值可正可负。正数表示将时间向后推移;负数表示向前推移。该方法可以解决时间跨域的问题,如2017-06-30执行add(Calendar.DAY,1),时间会自动变为2017-07-01;

/**
* Adds the given amount to a {@code Calendar} field.
*
* @param field
*            the {@code Calendar} field to modify.
* @param value
*            the amount to add to the field.
* @throws IllegalArgumentException
*                if {@code field} is {@code DST_OFFSET} or {@code
*                ZONE_OFFSET}.
public abstract void add(int field, int value);

相关文章

  • Calendar常用方法

    Calendar使用方法 抽象Calendar类提供了一组方法,这些方法允许将以毫秒为单位的时间转换为一组有用的分...

  • Java日期相关操作

    1. Date 大多数方法已经废弃,目前保留且常用的方法如下: 2. Calendar 推荐使用Calendar来...

  • Day13 作业

    1.常用的math模块中的方法 2.常用的calendar模块中的方法 3.常用的time模块中的方法 4.常用的...

  • Calendar类常用方法

    Calendar cal = Calendar.getInstance(); cal.get(Calendar.D...

  • python3内置模块calendar

    日历相关模块 常用方法 calendar.isleap(year)如果 year 是闰年则返回 True ,否则返...

  • Calendar类

    获取日历信息及时间的类。 calendar的常用方法: 获取时间: 设置时间格式: 利用SimpleDateFor...

  • python之calendar模块

    calendar 模块 calendar 模块提供了很多可以处理日历的函数。 1 常用函数 使用示例如下所示: 2...

  • Java自学-日期 Calendar

    Java的Calendar类 Calendar类即日历类,常用于进行“翻日历”,比如下个月的今天是哪天 示例 1 ...

  • 使用Calendar获取过往一年的每周周一和周日的时间戳和日期

    代码没有简化。主要是calendar.add(Calendar.DATE, num);这个方法可以将当前时间进行推移;

  • 聊聊java的日期处理类

    java里面常用的日期处理类: java里面常用的日期处理类主要有: Date Calendar TimeZone...

网友评论

      本文标题:Calendar常用方法

      本文链接:https://www.haomeiwen.com/subject/bejmhxtx.html