Java基础 与时间日期相关的类:System -Date -SimpleDateFormat -Calendar类 -解决后缀.000Z 的时区问题
笔记总结:
/**与时间相关的类:System_Date_SimpleDateFormat_Calendar类
* 1.system 类下的currentTimeMillis()
* 输出从1970年至今的时间的毫秒数, 运行两次即可用于统计时间间隔!
* 2.Date() 类:java.util.Date : toString()/getTime()--返回long型64位整数 ;
* 以及他的子类java.sql.Date
* 3.SimpleDateFormat 类:(国际化)
* 格式化: ①构造器: SimpleDateFormat() / SimpleDateFormat(String pattern) :常用pattern:"G yyyy:MM:dd 'at' HH:mm:ss "
* ② String str=sdf.format(new Date()) : 利用sdf format一个Date()对象,格式化为字符串输出即可!
* 解析:
* ① 利用parse进行转换, Date date1=sdf.parse("18-10-20 上午10:55");
* ② 直接输出Date().toString() 显示Date() 的标准时间!
* 4.Calendar 类:
* ① Calendar c=Calendar.getInstance(); //实现Calendar的引用,因为它没有构造器
* ②get(field) / set(field,number) /add(field,number): number可以表示为正负数
* ③DAte getTime() /setTime()(Date d)
*/
测试代码:
public class TestDate {
@Test//1.Date类
public void test1(){
Date d1=new Date();
System.out.println(d1.toString());
System.out.println(d1.getTime());long x=d1.getTime();
Date d2=new Date(x);
System.out.println(d2);
}
@Test //2.SimpleDateFormat
public void test2() throws Exception{
//1.格式化1,Date类型转String
SimpleDateFormat sdf=new SimpleDateFormat();
String str=sdf.format(new Date());
System.out.println(str); //18-10-20 上午10:55
//2.格式化2
SimpleDateFormat sdf1=new SimpleDateFormat("yyyy-MM-dd 'at' HH:mm:ss");
str=sdf1.format(new Date());
System.out.println(str); //2018:10:20 at 11:10:53
//3.解析 ,字符串转 Date类型
Date date1=sdf.parse("18-10-20 上午10:55");
System.out.println(date1); //Sat Oct 20 10:55:00 CST 2018
Date date2=sdf1.parse("2018-10-20 at 10:55:32");
System.out.println(date2);
}
@Test //3.Calendar() get
public void test4(){
Calendar c=Calendar.getInstance(); //实现Calendar的引用
System.out.println("今天是本月的第几天? "+c.get(Calendar.DAY_OF_MONTH));
System.out.println("今天的星期几: "+(c.get(Calendar.DAY_OF_WEEK)-1) );
//打印当前时分秒
int h=c.get(Calendar.HOUR_OF_DAY); //不要用Calendar.HOUR,不然12点就成了0点
int m=c.get(Calendar.MINUTE);
int s=c.get(Calendar.SECOND);
System.out.println("当前Calendar的 时分秒: "+h+":"+m+":"+s);
c.set(Calendar.DAY_OF_MONTH,23);
Date d=c.getTime();
System.out.println("更新后的Date时间: "+d);
}
}
输出结果:
Sat Oct 20 13:13:33 CST 2018
1540012413382
Sat Oct 20 13:13:33 CST 2018
18-10-20 下午1:13
2018-10-20 at 13:13:33
Sat Oct 20 10:55:00 CST 2018
Sat Oct 20 10:55:32 CST 2018
今天是本月的第几天? 20
今天的星期几: 6
当前Calendar的 时分秒: 13:13:33
更新后的Date时间: Tue Oct 23 13:13:33 CST 2018
后续补上-解决后缀.000Z 的时区问题
测试代码:
@Test
public void test01() throws ParseException {
//方法一: 暴利删除后续字符
String s=new String("2019-01-31T16:00:00.00");
int pos=s.lastIndexOf(".");
if(pos!=-1){
s=s.substring(0,pos);
System.out.println(s);
}
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss");
System.out.println(sdf.parse(s)+"\n");
//进行时区的转换
String date = "2016-08-15T16:00:00.000Z";
date = date.replace("Z", " UTC");
System.out.println(date);
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS Z");
Date d = format.parse(date);
System.out.println(d);
}
输出结果:
2019-01-31T16:00:00
Thu Jan 31 16:00:00 CST 2019 2016-08-15T16:00:00.000 UTC
Tue Aug 16 00:00:00 CST 2016
参考博客:
https://blog.csdn.net/m0_37983376/article/details/78202770 解决后缀.000Z 的时区问题
https://www.cnblogs.com/myseries/p/7589408.html java Date时间的各种转换方式和Mysql存时间类型字段的分析
Java基础 与时间日期相关的类:System -Date -SimpleDateFormat -Calendar类 -解决后缀.000Z 的时区问题的更多相关文章
- Java基础进阶:时间类要点摘要,时间Date类实现格式化与解析源码实现详解,LocalDateTime时间类格式化与解析源码实现详解,Period,Duration获取时间间隔与源码实现,程序异常解析与处理方式
要点摘要 课堂笔记 日期相关 JDK7 日期类-Date 概述 表示一个时间点对象,这个时间点是以1970年1月1日为参考点; 作用 可以通过该类的对象,表示一个时间,并面向对象操作时间; 构造方法 ...
- Java中的时间日期处理
程序就是输入——>处理——>输出.对数据的处理是程序员需要着重注意的地方,快速.高效的对数据进行处理时我们的追求.其中,时间日期的处理又尤为重要和平凡,此次,我将把Java中的时间日期处理 ...
- 第28天学习打卡(Date和Calendar类 基本类型的包装类 集合 增强for循环 )
Date和Calendar类 简介 日期和日历类,用于操作日期相关信息. 构造方法 Date(): 构造一个日期对象,当前系统时间,精确到毫秒. Date(long): 构造一个日期对象,时间为自&q ...
- 时间日期相关:Date类、DateFormat类、Calendar类
1 Date类 类 Date 表示特定的瞬间,精确到毫秒. 1秒=1000毫秒 毫秒的0点:公元1970年 一月一日,午夜0:00:00 对应的毫秒值就是0 时间和日期的计算,必须依赖毫秒值. Sys ...
- 时间日期相关类:Date类,DateFormat类&SimpleDateFormat类,Calendar类
日期相关类 1.Date类:日期时间类 A.构造方法 Date(): 根据当前系统时间创建日期对象 Date(Long time):根据传入的毫秒值时间创建日期对象 B.成员方法 Long get ...
- Java 中的时间日期 API
自从 14 年发布 Java 8 以后,我们古老 java.util.Date 终于不再是我们 Java 里操作日期时间的唯一的选择. 其实 Java 里的日期时间的相关 API 一直为世猿诟病,不仅 ...
- Java日期类:Date和Calendar的使用
总是使用这两个类,总是需要百度.还不如一次全部整理完. 一.介绍: Date 类 Date 表示特定的瞬间,精确到毫秒. 在 JDK 1.1 之前,类 Date 有两个其他的函数.它允许把日期解释为年 ...
- Java 8 的时间日期 API
上一篇文章『Java 的时间日期 API』中,我们学习了由 Date.Calendar,DateFormat 等组成的「传统时间日期 API」,但是传统的处理接口设计并不是很友好,不易使用.终于,Ja ...
- 日期时间类:Date,Calendar,计算类:Math
日期时间类 计算机如何表示时间? 时间戳(timestamp):距离特定时间的时间间隔. 计算机时间戳是指距离历元(1970-01-01 00:00:00:000)的时间间隔(ms). 计算机中时间2 ...
随机推荐
- 李宗盛spss罚写2019-12-8
以上过程即整个假设检验的思想:反证法及小概率原理. 因而假设检验有可能犯两类错误. 第一类错误:原假设正确,而错误地拒绝了它,即“拒真”的错误,其发生的概率为第一类错误的概率. 第二类错误:原假设不正 ...
- 最新 三六零java校招面经 (含整理过的面试题大全)
从6月到10月,经过4个月努力和坚持,自己有幸拿到了网易雷火.京东.去哪儿.三六零等10家互联网公司的校招Offer,因为某些自身原因最终选择了三六零.6.7月主要是做系统复习.项目复盘.LeetCo ...
- Postman 下载和使用
Postman 的官网下载地址是:https://www.getpostman.com/apps/
- IO-file-06 文件夹的遍历
/** * 列出下一级 * 1.list(): 列出下级名称 String[] list = dir.list(); * 2.listFiles():列出下级File对象 File[] listF ...
- 通过js操作,将div设置为contenteditable的内容设为全选状态
因为div设置为contenteitable可编辑的文本内容用 select()选择全部内容不生效,所以只能用下列方法: 先 creatTextRange或者 createRange <div ...
- Servlet 响应及请求信息
// 文件路径 D:\ApacheServer\web_java\HelloWorld\src\com\test\TestServletRequestrResponse.java package co ...
- 如何理解Python中的None
Python中的None是一个经常被用到的知识点,但是很多人对于None的内涵把握的还是不够精确,今天就和我一起好好理解下这个小知识点吧. 1.None表示空,但它不等于空字符串.空列表,也不等同于F ...
- time模块/datetime模块/calendar模块
time模块时间的表示形式时间戳:以整型或浮点型表示⼀个时间,该时间以秒为单位,这个时间是以1970年1⽉1⽇0时0分0秒开始计算的. 导入time import time 1.返回当前的时间戳 no ...
- const函数返回自身的引用也是常量引用
const函数返回自身的引用也是const 解决:根据对象是否为consr重载
- Redis过期命令
Redis键的过期时长的设定 ·命令名称:EXPIRE ·语法:EXPIRE key seconds ·功能:为给定key设置生存时间,当key过期时(生存时间为0),它会被自动删除 ·返回值:设置成 ...