java日期时间:
java.unit包提供了Date类来封装当前的日期和时间
Data类提供了两个构造函数来实例化Date对象
- 第一个构造函数使用当前的时间来初始化对象
Data();
- 第二个构造函数接收一个函数,该函数从1970年1月1日起的毫秒数
Data(long millisec);
方法 | 描述 |
---|---|
boolean after(Date date) | 当调用此方法的Date对象在指定日期之后返回true,否则返回false |
boolean before(Date date) | 当调用此方法的Date对象在指定日期之前返回true,否则返回false |
Object clone( ) | 返回此对象的副本 |
int compareTo(Date date) | 比较当调用此方法的Date对象和指定日期。两者相等时候返回0。调用对象在指定日期之前则返回负数。调用对象在指定日期之后则返回正数 |
int compareTo(Object obj) | obj是Date类型则操作等同于compareTo(Date) 。否则它抛出ClassCastException |
boolean equals(Object date) | 当调用此方法的Date对象和指定日期相等时候返回true,否则返回false |
long getTime( ) | 返回自 1970 年 1 月 1 日 00:00:00 GMT 以来此 Date 对象表示的毫秒数 |
int hashCode( ) | 返回此对象的哈希码值 |
void setTime(long time) | 用自1970年1月1日00:00:00 GMT以后time毫秒数设置时间和日期 |
String toString( ) | 把此 Date 对象转换为以下形式的 String: dow mon dd hh:mm:ss zzz yyyy 其中: dow 是一周中的某一天 (Sun, Mon, Tue, Wed, Thu, Fri, Sat) |
获取当前日期和时间:
使用Data对象中的 toString() 方法来打印当前日期和时间
日期比较:
三种方法比较日期:
- 使用 getTime() 方法获取两个日期(自1970年1月1日经历的毫秒数值),然后比较这两个值
- 使用方法 before(),after() 和 equals()。例如,一个月的12号比18号早,则 new Date(99, 2, 12).before(new Date (99, 2, 18)) 返回true。
- 使用 compareTo() 方法,它是由 Comparable 接口定义的,Date 类实现了这个接口
使用printf格式化日期:
使用两个字母格式,它以 %t 开头并且以下面表格中的一个字母结尾
转换符 | 说明 | 示例 |
---|---|---|
c | 包括全部日期和时间信息 | 星期一 十一月 5 16:42:20 CST 2018 |
F | "年-月-日"格式 | 2018-11-05 |
D | "月/日/年"格式 | 11/05/18 |
r | "HH:MM:SS PM"格式(12时制) | 04:44:16 下午 |
T | "HH:MM:SS"格式(24时制) | 16:44:51 |
R | "HH:MM"格式(24时制) | 16:45 |
java休眠(sleep):
sleep()使当前线程进入停滞状态(阻塞当前线程),让出CPU的使用、目的是不让当前线程独自霸占该进程所获的CPU资源,以留一定时间给其他线程执行的机会
Calendar类:
Calendar类是一个抽象类,在实际使用时实现特定的子类对象,创建对象的过程对程序员来说是透明的,只需要使用getInstance方法创建即可
创建一个代表系统当前日期的Calendar对象
Calendar c = Calendar.getInstance();//默认是当前日期
创建一个指定日期的Calendar对象
使用Calendar类代表特定的时间,需要首先创建一个Calendar的对象,然后再设定该对象中的年月日参数来完成
//创建一个代表2018年11月05日的Calendar对象
Calendar c1 = Calendar.getInstance();
c1.set(2018,11 - 1, 05);
常量 | 描述 | 常量 | 描述 |
---|---|---|---|
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 | 星期几 |