Java中的日期处理
java中对于日期的相关处理
最近在刷PAT的算法题,在刷乙级的题目时候,遇到了有关日期时间 处理的相关题目,由于我用的主语言是JAVA,当初学常用类库的时候就没有学的太精,这次遇到时间的处理,便整理了一下。
相关说明在代码里面注释了
相关代码如下:
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
//
public class TimeProcessing {
public static void main(String[] args) {
// 获取当前时间
Date date = new Date();
Date date1 = new Date(119,6,7,21,4,50);
System.out.println(date);
System.out.println(date1);
//日期比较
// 判断时间是否在指定时间之后,是的话返回true ,不是的话返回false
System.out.println(date.after(new Date(120,6,7)));
// 判断时间是否在指定时间之前,是的话返回true ,不是的话返回false
System.out.println(date.before(new Date(120,6,7)));
// 比较当调用此方法的Date对象和指定日期。两者相等时候返回0。调用对象在指定日期之前则返回负数。调用对象在指定日期之后则返回正数
System.out.println(date.compareTo(new Date(119,6,7)));
// 返回自 1970 年 1 月 1 日 00:00:00 GMT 以来此 Date 对象表示的毫秒数
System.out.println(date.getTime() - date1.getTime());
// 日期格式化
// 确立了转换的格式,其中 yyyy 是完整的公元年,MM 是月份,dd 是日期,HH:mm:ss 是时、分、秒
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
SimpleDateFormat simpleDateFormat1 = new SimpleDateFormat("yy/MM/dd");
System.out.println(simpleDateFormat.format(date));
System.out.println(simpleDateFormat1.format(date1));
// 解析字符串为Date类
try {
System.out.println(simpleDateFormat.parse("2017-10-10"));
} catch (ParseException e) {
e.printStackTrace();
}
// 格式化输出:
//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);
}
}
好像JAVA还有对日期的处理,等后面有时间再补上