java

关注公众号 jb51net

关闭
首页 > 软件编程 > java > Java 时间格式

Java 时间格式转换之impleDateFormat与Data API解析与使用

作者:yyy言者

想必大家对 SimpleDateFormat 并不陌生。SimpleDateFormat 是 Java 中一个非常常用的类,他是以区域敏感的方式格式化和解析日期的具体类。 它允许格式化 (date -> text)、语法分析 (text -> date)和标准化

1.创建无参数Data对象

Date d1=new Date(); //创建无参数Data对象
System.out.println(d1); //d1返回当前时间
例如返回:

Sun Nov 14 18:33:05 CST 2021

2.创建有参数Data对象

返回从1970年1月1日 8时00分00秒 000毫秒加上传入的毫秒数 所能得到的时间。
1s等于1000ms
一天:86400000ms

Date d2=new Date(86400000);

System.out.println(d2);//返回了Fri Jan 02 08:00:00 CST 1970
//返回:1970 1月2日 8时,和1970年1月1日 8时00分00秒,差一天
package com.example.demo16;

import java.util.Date;

public class Daterw {

public static void main(String[]args){

    Date d1=new Date();

    System.out.println(d1); //d1返回当前时间
    Date d2=new Date(86400000);

    System.out.println(d2);//返回了Fri Jan 02 08:00:00 CST 1970

}

}

3.Data对象时间格式转换:

我们想要的是2021-11-14 18:42分,
不是:Fri Jan 02 08:00:00 CST 1970(这种格式)
怎么转换呢?
导入
import java.text.SimpleDateFormat;
使用:SimpleDateFormat对象(创建格式化对象)

SimpleDateFormat we=new SimpleDateFormat(“yyyy-MM-dd HH:MM:ss SSSS”); //格式yyyy-MM-dd HH:MM:ss SSSS
//不能改字母yyyy:year,MM:月份,dd:第几天,HH:小时,MM:分钟,ss:秒数,SSSS:毫秒,可以设置:SSS,三位

String wer=we.format(d1); //再使用format(),传入时间
System.out.println(wer);

package com.example.demo16;

import java.text.SimpleDateFormat;
import java.util.Date;
import static java.lang.String.format;

public class Daterw {

public static void main(String[]args){

    SimpleDateFormat we=new SimpleDateFormat("yyyy-MM-dd HH:MM:ss SSSS");//HH:24小时计算,hh:12小时计算,

    Date d1=new Date();

    System.out.println(d1); //d1返回当前时间
    Date d2=new Date(86400000);

    System.out.println(d2);//返回了Fri Jan 02 08:00:00 CST 1970

String wer=we.format(d1);
System.out.println(wer);

}

}

效果图:

在这里插入图片描述

还可以:

 SimpleDateFormat we=new SimpleDateFormat("yyyy年MM月dd天 HH小时:mm分钟:ss秒 SS毫秒");

返回:

2021年11月14天 19小时:05分钟:20秒 370毫秒(这个格式)

4.返回:指定的某个参数:返回年/月/天/小时

直接:这样
SimpleDateFormat we=new SimpleDateFormat(“yyyy年”);
将会返回:

2021年

SimpleDateFormat we=new SimpleDateFormat(“HH小时”);//
返回了:

19小时

5.API: getTime()

long err=d1.getTime();//计算:从1970-1-1,算起,经过了多少毫秒到现在时间,这个数字很长,所以用long数据类型

package com.example.demo16;

import java.text.SimpleDateFormat;
import java.util.Date;
import static java.lang.String.format;

public class Daterw {

public static void main(String[]args){

   // SimpleDateFormat we=new SimpleDateFormat("yyyy-mm-dd hh:mm:ss SS");
  //  SimpleDateFormat we=new SimpleDateFormat("yyyy年MM月dd天 HH小时:mm分钟:ss秒 SS毫秒");
   // SimpleDateFormat we=new SimpleDateFormat("yyyy年");

    SimpleDateFormat we=new SimpleDateFormat("HH小时");
    Date d1=new Date();

    System.out.println(d1); //d1返回当前时间
     Date d2=new Date(86400000);

    System.out.println(d2);//返回了ri Jan 02 08:00:00 CST 1970

String wer=we.format(d1);
System.out.println(wer);

long err=d1.getTime();//计算:从1970-1-1,算起,经过了多少毫秒到现在时间,这个数字很长,所以用long数据类型

System.out.println(err);
long qqq=System.currentTimeMillis();  //获取从1970-1-1到现在,经过了多少毫秒

System.out.println(qqq);          
}

}

效果:

在这里插入图片描述

到此这篇关于Java 时间格式转换之impleDateFormat与Data API解析与使用的文章就介绍到这了,更多相关Java 时间格式内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文