zoukankan      html  css  js  c++  java
  • Calendar中add函数和roll函数的用法及区别

    Calendar中add()和roll()函数的用法
    一、取某个时间点后的整点时刻。例如1984年7月7日15:23:05后的整点时刻即为1984-07-07 16:00:00。
    实现如下:
    Calendar calendar = Calendar.getInstance();
    calendar.add(Calendar.HOUR_OF_DAY, 1);//小时上加1
    calendar.set(Calendar.MINUTE, 0);//分钟设为0
    calendar.set(Calendar.SECOND, 0);//秒钟设为0

    二、取某个日历之前的某个月。例如要取2002年1月12号之前1个月的时间,应该是2001年12月12日。
    Calendar calendar = Calendar.getInstance();
    calendar.set(2002, 0, 12);//代表2002年1月12日
    calendar.add(Calendar.MONTH, -1);//这样就将日期设置成了2001年12月12日。
    System.out.println(calendar.getTime().toString());

    但是这种情况如果用roll()来实现。如以下代码:
    Calendar calendar = Calendar.getInstance();
    calendar.set(2002, 0, 12);//代表2002年1月12日
    calendar.roll(Calendar.MONTH, -1);//这样就将日期设置成了2002年12月12日。
    System.out.println(calendar.getTime().toString());

    结论:roll()函数处理,只会相应的字段进行处理不会智能的对其它字段也进行逻辑上的改变。
            add()函数会在逻辑上改变其它字段,使结果正确。

    注:Calendar中的Month是从0-11的,0代表1月,11代表12月。

    http://blog.sina.com.cn/s/blog_62c89b450100sau9.html

  • 相关阅读:
    linux上用selenium登录新浪微博,获取用户关注的用户id
    JS、Python对字符串的编码函数
    在ubuntu系统下装hadoop
    windows下python3.x的安装与使用
    python多线程、多进程、协程的使用
    python简单操作redis
    操作系统基础知识
    排序算法汇总
    网易的突然袭击
    小红书视频面试
  • 原文地址:https://www.cnblogs.com/softidea/p/5767912.html
Copyright © 2011-2022 走看看