参考:http://www.runoob.com/java/java-date-time.html

Date类

构造:

Date() 使用当前的日期时间

Date(long millisec) 1970-01-01 00:00:00 时刻加一个毫秒数

方法:

  • boolean after(Date d) 是否在指定日期之后

  • boolean before(Date d) 是否在指定日期之前

  • Object clone() 复制一个对象

  • int compareTo(Date d) 相等返回0,小于d返回负数,大于d返回正数

  • boolean equals(Object d) 相等返回true,不等返回false

  • long getTime() 返回毫秒数

  • void setTime(long millisec) 用毫秒数设置时间

  • String toString() 转换为字符串

      import java.util.Date;
    
      public class DateDemo {
    public static void main(String[] args) {
    // TODO Auto-generated method stub
    Date d = new Date();
    Date dClone = (Date)d.clone();
    Date dBefore = new Date(System.currentTimeMillis()-60000);//当前时刻向前一分钟
    Date dAfter =new Date(System.currentTimeMillis()+60000);//当前时刻向后一分钟
    System.out.println(d.toString()); //Sun Feb 19 00:07:31 CST 2017
    System.out.println(System.currentTimeMillis()); //1487434051528
    System.out.println(d.getTime()); //1487434051512
    System.out.println(d.before(dAfter)); //true
    System.out.println(d.after(dBefore)); //true
    System.out.println(dBefore.compareTo(dAfter)); //-1
    System.out.println(d.equals(dClone)); //true
    System.out.println(d==dClone); //false
    }
    }

SimpleDateFormat类

用来定义时间格式

yyyy-MM-dd HH:mm:ss:SSS a E zzz G h D F w W k K

年-月-日 时:分:秒:毫秒 AM/PM 星期 时区 纪元 12格式小时 一年中的日 月中的周几 一年中第几周 一月中第几周 24小时 格式小时

构造

  • SimpleDateFormat(String pattern)

方法

  • String format(Date d) 将d按照sdf的格式格式化
  • Date parse(String date) 将字符串date转换为Date类型

Calendar类

实例获取

  • Calendar c = Calendar.getInstance();

方法

  • c.set(2017,01,01) 设置年月日

  • c.get(Calendar.XXX) 获取c的某一个部分,直接输出Calendar.XXX为当前时间值,要获取c的对应部分需要用get

    import java.util.Calendar;

    public class CalendarDemo {

    public static void main(String []args){

    Calendar c = Calendar.getInstance();//当前为2017-02-19 00:45

    System.out.println(c.get(Calendar.YEAR));

    System.out.println(c.get(Calendar.MONTH)+1);//月份从0开始,目前是2月,直接输出为1,所以需要+1

    System.out.println(c.get(Calendar.DATE));

    System.out.println(c.get(Calendar.HOUR));

    System.out.println(c.get(Calendar.MINUTE));

    System.out.println(c.get(Calendar.SECOND));

    System.out.println(c.get(Calendar.DAY_OF_WEEK));//星期从日开始为1

    }

    }

参考列表:

字母 描述 示例

G 纪元标记 AD

y 四位年份 2001

M 月份 July or 07

d 一个月的日期 10

h A.M./P.M. (1~12)格式小时 12

H 一天中的小时 (0~23) 22

m 分钟数 30

s 秒数 55

S 毫秒数 234

E 星期几 Tuesday

D 一年中的日子 360

F 一个月中第几周的周几 2 (second Wed. in July)

w 一年中第几周 40

W 一个月中第几周 1

a A.M./P.M. 标记 PM

k 一天中的小时(1~24) 24

K A.M./P.M. (0~11)格式小时 10

z 时区 Eastern Standard Time

' 文字定界符 Delimiter

" 单引号 `

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 星期几

字符 描述 例子

c 完整的日期和时间 Mon May 04 09:51:52 CDT 2009

F ISO 8601 格式日期 2004-02-09

D U.S. 格式日期 (月/日/年) 02/09/2004

T 24小时时间 18:05:19

r 12小时时间 06:05:19 pm

R 24小时时间,不包含秒 18:05

Y 4位年份(包含前导0) 2004

y 年份后2位(包含前导0) 04

C 年份前2位(包含前导0) 20

B 月份全称 February

b 月份简称 Feb

m 2位月份(包含前导0) 02

d 2位日子(包含前导0) 03

e 2位日子(不包含前导0) 9

A 星期全称 Monday

a 星期简称 Mon

j 3位年份(包含前导0) 069

H 2位小时(包含前导0), 00 到 23 18

k 2位小时(不包含前导0), 0 到 23 18

I 2位小时(包含前导0), 01 到 12 06

l 2位小时(不包含前导0), 1 到 12 6

M 2位分钟(包含前导0) 05

S 2位秒数(包含前导0) 19

L 3位毫秒(包含前导0) 047

N 9位纳秒(包含前导0) 047000000

P 大写上下午标志 PM

p 小写上下午标志 pm

z 从GMT的RFC 822数字偏移 -0800

Z 时区 PST

s 自 1970-01-01 00:00:00 GMT的秒数 1078884319

Q 自 1970-01-01 00:00:00 GMT的毫妙 1078884319047

Java学习笔记【七、时间、日期、数字】的更多相关文章

  1. Java学习笔记七 常用API对象三

    一.泛型:简单说就是对对象类型进行限定的技术 public class GenericDemo { public static void main(String[] args){ /*泛型作为1.5版 ...

  2. Java学习笔记七——数组工具类Arrays

    数组工具类Arrays Java提供的Arrays类里包含的一些static修饰的方法可以直接操作数组.若将里面的方法用熟的话,那开发效率会大大提高.下面介绍其中的方法. List<T> ...

  3. Java 学习笔记 (七) Java 参数

    head first java page 74 实参: argument 形参: parameter 方法会运用形参, 调用的一方会传入实参. 实参是传给方法的值.当它传入方法后就成了形参, 参数跟局 ...

  4. Java学习笔记七(目录操作)

    1.介绍 上一篇博客介绍的是java中经常使用的操作文件的方式,本篇博客着重解说一下,在Java中是怎样来操作目录的.主要是利用的是Java.IO包以下的File类,本篇博客着重解说一下该类的构造函数 ...

  5. Java学习笔记七:Java的流程控制语句之switch

    Java条件语句之 switch 当需要对选项进行等值判断时,使用 switch 语句更加简洁明了.例如:根据考试分数,给予前四名不同的奖品.第一名,奖励笔记本一台:第二名,奖励 IPAD 2 一个: ...

  6. 20145330第七周《Java学习笔记》

    20145330第七周<Java学习笔记> 第十三章 时间与日期 认识时间与日期 时间的度量 GMT(格林威治标准时间):现在不是标准时间 世界时(UT):1972年UTC出来之前,UT等 ...

  7. 20145230《java学习笔记》第七周学习总结

    20145230 <Java程序设计>第7周学习总结 教材学习内容 Lambda语法概览 我们在许多地方都会有按字符串长度排序的需求,如果在同一个方法内,我们可以使用一个byName局部变 ...

  8. java学习笔记之日期日历类

    java学习笔记之日期日历 Date日期类概述: 表示特定的瞬间,精确到毫秒 Date类的构造方法: 1.空参数构造方法 Date date = new Date(); 获取到当前操作系统中的时间和日 ...

  9. MYSQL学习笔记三:日期和时间函数

    MYSQL学习笔记三:日期和时间函数 1. 获取当前日期的函数和获取当前时间的函数 /*获取当前日期的函数和获取当前时间的函数.将日期以'YYYY-MM-DD'或者'YYYYMMDD'格式返回 */ ...

  10. Java IO学习笔记七:多路复用从单线程到多线程

    作者:Grey 原文地址:Java IO学习笔记七:多路复用从单线程到多线程 在前面提到的多路复用的服务端代码中, 我们在处理读数据的同时,也处理了写事件: public void readHandl ...

随机推荐

  1. C#.net winform skin 皮肤大全

    C#.net winform skin 皮肤大全 1. 东日IrisSkin IrisSkin 共有两个版本,一个是IrisSkin.dll 用于.Net Framework1.0/1.1 和Iris ...

  2. java高级之多线程

    1.1,多线程的作用: *线程是程序执行的一条路径, 一个进程中可以包含多条线程 *多线程并发执行可以提高程序的效率, 可以同时完成多项工作 1.2,多线程的应用场景: * 红蜘蛛同时共享屏幕给多个电 ...

  3. k8s组件批量启动、查看状态

    查看所有master节点kube-apiserver ansible k8s -m shell -a 'systemctl status kube-apiserver' 重启所有master节点kub ...

  4. playbook部署flanneld

    定义playbook的主机组 说明: 1.playbook的主机组和ansible的主机组不一样, 2.playbook的主机组文件必须要和playbook文件在同一个目录下否则会报如下错误: [ro ...

  5. MySQL数据库锁机制之MyISAM引擎表锁和InnoDB行锁详解

    转 http://blog.csdn.net/hsd2012/article/details/51112009 转 http://blog.csdn.net/e421083458/article/de ...

  6. CTF—攻防练习之Capture the Flag

    主机:192.168.32.152 靶机:192.168.32.160 首先nmap扫描端口: ftp,ssh,http服务 dirb扫描目录,flag下有一个flag password目录下,查看源 ...

  7. 在openstack中安装mysql5.7

    在控制节点上执行 1.下载mysql二进制安装包和依赖包 wget http://mirror.centos.org/centos/7/os/x86_64/Packages/libaio-devel- ...

  8. 学习笔记:CentOS7学习之十四:linux文件系统

    目录 1. 机械硬盘结构 1.1 机械硬盘结构 1.2 簇和block 2.文件系统结构 2.1 文件名 2.2 inode的内容 2.3 inode的大小 2.4 目录文件 2.5 block块大小 ...

  9. [Nowcoder212D]禁书目录_概率期望

    禁书目录 题目大意:清教需要定期给Index清除记忆,在此之前需要把当中的十万三千本禁书取出来......不幸的是,禁书一旦离开了Index就非常脆弱,具体来说,每一本禁书都有一个魔力值 ai ,其记 ...

  10. [Comet OJ - Contest #6 C][48C 2279]一道树题_树

    一道树题 题目大意: 给定一棵树,边的编号为读入顺序.现在规定,区间$[L, R]$的贡献$S(L,R)$为把编号在该区间里的边都连上后,当前形成的森林中点数大于等于$2$的联通块个数. 求$\sum ...