日期时间

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

java.util 包提供了 Date 类来封装当前的日期和时间。 Date 类提供两个构造函数来实例化 Date 对象。

第一个构造函数使用当前日期和时间来初始化对象。

Date( )

第二个构造函数接收一个参数, 该参数是从1970年1月1日起的毫秒数。

Date(long millisec)

创建Date对象之后, 可以使用下面的方法

获取当前日期时间

import java.util.Date;
public class Date_toString {
    public static void main(String args[]){
        Date date = new Date();
        System.out.println(date.toString());
    }

}

日期比较

Java使用以下三种方法来比较两个日期

  • 使用 getTime() 方法获取两个日期(自1970年1月1日经历的毫秒数值), 然后比较这两个值。
  • 使用方法 before(), after() 和 equals()。例如, 一个月的12号比18号早, 则 new Date(99, 2, 12).before(new Date (99, 2, 18)) 返回true。
  • 使用 compareTo() 方法, 它是由 Comparable 接口定义的, Date 类实现了这个接口。

DateTimeFormatter

使用 SimpleDateFormat 格式化日期

SimpleDateFormat 是一个以语言环境敏感的方式来格式化和分析日期的类。SimpleDateFormat 允许你选择任何用户自定义日期时间格式来运行。

import java.util.*;
import java.text.*;

public class SimpleDateFormat_xx {
    public static void main(String args[]) {

        Date dNow = new Date( );
        /* 这一行代码确立了转换的格式, 其中 yyyy 是完整的公元年, MM 是月份, dd 是日期, HH:mm:ss 是时、分、秒。
        注意:有的格式大写, 有的格式小写, 例如 MM 是月份, mm 是分;HH 是 24 小时制, 而 hh 是 12 小时制。*/
        SimpleDateFormat ft = new SimpleDateFormat ("E yyyy.MM.dd 'at' hh:mm:ss a zzz");

        System.out.println("Current Date: " + ft.format(dNow));
    }
}

使用printf格式化日期

printf 方法可以很轻松地格式化时间和日期。使用两个字母格式, 它以 %t 开头并且以下面表格中的一个字母结尾。

import java.util.Date;

public class DateDemo {

  public static void main(String args[]) {
     // 初始化 Date 对象
     Date date = new Date();

     //c的使用
    System.out.printf("全部日期和时间信息:%tc%n",date);
    //f的使用
    System.out.printf("年-月-日格式:%tF%n",date);
    //d的使用
    System.out.printf("月/日/年格式:%tD%n",date);
    //r的使用
    System.out.printf("HH:MM:SS PM格式(12时制):%tr%n",date);
    //t的使用
    System.out.printf("HH:MM:SS格式(24时制):%tT%n",date);
    //R的使用
    System.out.printf("HH:MM格式(24时制):%tR",date);
  }
}