Java中对日期的处理

发布时间:2024年01月19日

Java中对日期的处理

? 这个案例主要掌握:

???? 1.怎么获取系统当前时间

???? 2.String-->Date

???? 3.Date-->String

Import java.text.SimpleDateFormat;

Import java.util.Date;

?public class DateTest01{

?? public static void main(String[] args) throws Exception{

????? //获取系统当前时间(精确到毫秒的系统当前时间)

???? //直接调用无参数构造方法就行

??? Date nowTime = new Date();

?? //java.util.Date类的toString()方法已经被重写了

? //输出的应该不是一个对象的内存地址,应该是一个日期字符串

? //System.out.println(nowTime);

?//日期可以格式化吗?

?//将日期类型Date,按照指定的格式进行转换:Date? 转换成具有一个格式的日期字符串? String

//SimpleDateFormat是java.text包下的。专门负责日期格式化的

/*

?yyyy? 年? (年是4位)

MM 月?? (月是2位)

?dd??? 日??????

?HH 时

?mm 分

?ss??? 秒

?sss 毫秒(毫秒是3位,最高999,1000毫秒等于1秒)

?注意:在日期格式中,除了 y M d H? m s S这些字符不能随便写之外,剩下的符号格式自已随意组织

*/

?SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss SSS");

?//SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss SSS");

?//SimpleDateFormat sdf = new SimpleDateFormat("MM-dd HH:mm:ss SSS");

?String nowTimeStr = sdf.format(nowTime);

?System.out.println(nowTimeStr);

?//假设现在有一个日期字符串String,怎么转换成Date类型?

//String-->Date

? String time = "2018-08-08 08:08:08 888";

? //SimpleDateFormat sdf2 = new SimpleDateFormat("格式不能随便写,要和日期字符串格式相同”);

//注意:字符串的日期格式和SimpleDateFormat对象指定的日期格式要一致,不然会出现异常:java.text.ParseException

??? SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss SSS");

??? Date dateTime = sdf2.parese(time);

??? System.out.println(dateTime);

?}

}

1秒=1000毫秒

?public class DateTest02{

??? public static void mian(String[] args){

?????? //获取自1970年1月1日00:00:00 000到当前系统时间的总毫秒数

?????? long nowTimeMillis = System.currentTimeMillis();

?????? System.out.println(nowTimeMillis);

?

?????? //统计一个方法耗时

????? //在调用目标方法之前记录一个毫秒数

????? long begin = System.currentTimeMillis();

????? print();

????? //在执行完目标方法之后记录一个毫秒数

????? long end =? System.currentTimeMillis();

????? System.out..println("耗费时长"+(end-begin)+"毫秒");

???? }

??? //需求:统一一个方法执行所耗费的时长

??? public static void print(){

?????? for(int i=0;i<1000;i++){

????????? System.out.println("i="+i);

?????? }

??? }

?}

简单总结一下System类的相关属相和方法

? System.out? 【out是System类的静态变量】

? System.out.println() 【println()方法不是System类的,是PrintStream类的方法】

? System.gc() 建议启动垃圾回收器

? System.currentTimeMillis() 获取自1970年1月1日到系统当前时间的总毫秒数

? System.exit(0)? 退出JVM

?import java.text.SimpleDateFormat;

? import java.util.Date;

?? public class DateTest03{

????? public static void main(String[] args){

??????? //这个时间是什么时间?

?????? //1970-01-01 00:00:00 001

?????? Date time = new Date(1);? //注意:参数是一个毫秒

?????? SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss SSS");

?????? String strTime = sdf.format(time);

?????? System.out.println(strTime);

?????

????? //获取昨天此时的时间

??? Date time2 = new Date(System.currentTimeMills()-1000*60*60*24);

??? String strTime2 = sdf.format(time2);

??? System.out.println(strTime2);

????? }

}

文章来源:https://blog.csdn.net/m0_74249744/article/details/135707215
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。