目录:
1.Date
2.DateFormat
3.Calendar

1.Date

(1)所在位置 java.util.Date;

(2)两种创建对象的方法:

如果调用空参构造创建对象那么对象为当前的时间,如果调用有参构造(参数是一个long类型代表毫秒数),那么返回的对象是从基准时间过了所输入参数的时间后表示的日期
基准时间是1970年1月1日8时0分0秒

如图:

注意这里重写了toString方法按照一定的格式去输出时间(toString把他变成字符串输出)

(3)常用方法:
如图:

2.DateFormat

(1)所在位置java.text.DateFormat

(2)Datefromat简介:

通过这个类帮我们完成日期和文本之间的切换,也就时Date对象和String对象之间的切换
但是Datefromat时一个抽象类不能直接使用所以我们使用他的子类SimpleDateFormat

(3)SimpleDateFormat的位置:java.text.SimpleDateFormat

构造方法:
public SimpleDateSimple(String pattern)

pattern代表一个字符串,代表日期自定义格式

格式规则:

(4)DateFormat常用方法:

  • public String format(Date date):将Date对象格式化为字符串。
  • public Date parse(String source):将字符串解析为Date对象。

例子:

这个地方注意一点一旦自定义格式固定(构造方法的参数),程序将会按照指定的格式去转换成字符串和Date对象

还要注意parse需要抛出异常throws ParseException

3.Calendar

(1)Calendar所在位置:java.util.Calendar

(2)Calendar是日历类,在Date后出现,替换掉了许多Date的方法。该类将所有可能用到的时间信息封装为静态成员变量,方便获取。日历类就是方便获取各个时间属性的,由于Calendar也是抽象类所以并不能实例化对象。所以我们有以下两种方式获得其子类对象然后实现它的方法:

第一种:使用静态方法
Calendar cal=Calender.getInstance();

第二种:使用子类实现
Calendar cal=new GregorianCalendar();

GregorianCalendar来自java.util.GregorianCalendar

(3)常用方法:

  • 1.public int get(int field):返回给定日历字段的值。
  • 2.public void set(int field, int value):将给定的日历字段设置为给定值。
  • 3.public abstract void add(int field, int amount):根据日历的规则,为给定的日历字段添加或减去指定的时间量。
  • 4.public final Date getTime():返回一个表示此Calendar时间值(从历元到现在的毫秒偏移量)的Date对象。
  • 5. public final void setTime(Date date):设置日历的时间与给定的Date

Calendar类种提供很多成员常量,代表给定的日历字段:

(4)方法使用实例:
get:反回给定字段的值

运行结果:

set:将给定的日历字段设置为给定值。

运行结果:

add:根据日历的规则,为给定的日历字段添加或减去指定的时间量。

add方法可以对指定字段进行操作,如果第二个参数为正数那么则是加上偏移量,如果为负数则是减去偏移量


运行结果:

getTime:返回一个表示此Calendar时间值(从历元到现在的毫秒偏移量)的Date对象。

运行结果:

setTime:设置日历的时间与给定的Date

运行结果(就是一个Calendar的运行结果):

Date、DateFormat、Calendar日期类相关推荐

  1. java 日期calendar_java成神之——date和calendar日期的用法

    Date和Calendar日期的用法 Date类 System.currentTimeMillis() // 当前时间毫秒数 Date time = new Date(); time.getTime( ...

  2. Calendar日期类获取上月同期需求

    业务需求:获取昨天,前天,以及上月同期时间的数据 首先我想到的是使用日期类Calendar去处理,Calender是java自带的一个用于日历的类,方便处理此类的时间问题. 在处理上月同期的时候我遇到 ...

  3. 【Java从入门到头秃专栏 】(三) 控制流程 Math Date DateFormat Calendar System BigDecimal Random

    目录 1 控制流程 2 Math类 3 Date类 4 DateFormat类 5 Calendar类(日历类) 6 System类 7 BigDecimal类 8 Random类(随机数) 1 控制 ...

  4. java中使用Calendar日期类获得下一个月有多少天

    通过Calendar计算下一个月的年 月 以及下一月有多少天 //计算下一个月Calendar calendar=Calendar.getInstance();//获得当前日期往后推1个月 amoun ...

  5. java日期类的计算问题_java日期计算(Calendar类)

    昨天学了java日期的格式器,主要是用SimpleDateFormat进行格式化.解析.但这还仅停留在日期的查看(调整显示格式)阶段,更重要的是日期的操作.今天继续学习,记录如下: 今天主要学习的日期 ...

  6. java中日历类的用法_java日期类的用法

    java日期类的用法 不管你是处理财务交易还是计划着下一步的行动,你都要知道怎样在Java中建立,使用和显示日期.这需要你简单的查阅一下相应类的API参考:一个日期可以创建3个相关类的对象.这篇文章告 ...

  7. 三代日期类的基本使用

    三代日期类的基本使用 文章目录 三代日期类的基本使用 一.第一代日期类Date 二.第二代的日期类Calendar 二.第三代的日期类LocalDateTime 总结 一.第一代日期类Date Dat ...

  8. Java实用类,包装类,日历类,日期类等工具类常用方法

    文章目录 第二章-实用类 1.枚举类型 2.包装类 3.包装类的常用方法 4.包装类的自动装箱和拆箱 5.String类 6.StringBuffer对象 String,StringBuffer,St ...

  9. [C++]日期类计算器的模拟实现

    目录 日期类计算器的模拟实现:: 1.获取某年某月的天数 2.构造函数 3.拷贝构造函数 4.赋值运算符重载 5.析构函数 6.日期+=天数 7.日期+天数 8.日期-天数 9.日期-=天数 10.前 ...

最新文章

  1. 有人做出了中文版GPT-2,可用于写小说、诗歌、新闻等;15亿参数版GPT-2被两名研究生复现...
  2. 用putty生成密钥SSH远程登录(解决)
  3. 极光推送maven与代码,无需修改,粘贴即用
  4. 数据结构的简单理解(3)
  5. 越来越多的人不刷朋友圈竟然是因为.....
  6. 规培手册填写模板_9年老资料员经验分享,181套资料员模板+302页工作手册,成为优秀资料员还能提高工作效率,限时分享...
  7. 交流信号叠加直流偏置_T型偏置器与隔直器,二者应用之对比
  8. 【转】TreeList 选中节点时图标状态和背景色
  9. C# 线程调用主线程中的控件
  10. vue导出excel表格
  11. rational rose 启动选择_Rational Rose 附使用教程
  12. 最全面的PS快捷键使用指南(图文演示)
  13. 小米手机打开报告mimu查看程序调试错误locat
  14. 摄像机功能参数:色温和白平衡
  15. 微信小程序获取收货地址流程
  16. Https证书的安装
  17. 计算机组成原理唐朔飞第六章知识点总结,计算机组成原理(唐朔飞)教材笔记 第六章 计算机的运算方法...
  18. 父子进程终止顺序与僵死进程
  19. 2021 ICPC Southeastern Europe Regional Contest ABFGJKLN
  20. java继承a mya new c,java – 为什么外部类不能扩展内部类?

热门文章

  1. Python3 Selenium自动化web测试 == 第三节 常用WebDriver API使用示例上(24个API)
  2. Linux下的iwpriv(iwlist、iwconfig)的简单应用
  3. Appboy 基于 MongoDB 的数据密集型实践
  4. 拽 Excel 到 ComponentOne C1FlexGrid
  5. CLR via C# 3 读书笔记(2):第1章 CLR执行模型 — 1.2 将托管模块组合为程序集
  6. synchronized(xxx.class)
  7. 设计模式-模板方法(Template Method Patten)
  8. kafka数据文件.log
  9. linux centos7挂载/dev/sdb硬盘到根目录(根目录扩容新磁盘)
  10. Spark RDD并行度与分区设置