Java时间类型用法大全
程序员文章站
2022-06-30 19:28:36
System类的currentTimeMillis方法@Testpublic void a(){ //返回当前时间与1970年1月1日0时0分0秒之间以毫秒为单位的时间差。 //成为时间戳 long l = System.currentTimeMillis(); System.out.println(l);}结果:1594882285191java.util.Date类和java.sql.Date类/* java.util.Date类 1.两个...
System类的currentTimeMillis方法
@Test
public void a(){
//返回当前时间与1970年1月1日0时0分0秒之间以毫秒为单位的时间差。
//成为时间戳
long l = System.currentTimeMillis();
System.out.println(l);
}
结果:1594882285191
java.util.Date类和java.sql.Date类
/*
java.util.Date类
1.两个构造器:
>构造器一:Date()
>构造器二:创建指定毫秒数的Date对象
2.两个方法:
>toString():显示当前的年、月、日、时、分、秒
>getTime():获取当前date对应的毫秒数
3.java.sql.Date 对用数据库中的日期类型的变量
>如何实例化
>sql.date--->util.date
*/
@Test
public void test01(){
//构造器一:Date()
Date date = new Date();
System.out.println(date.getTime());//1594882763377
System.out.println(date.toString());//Thu Jul 16 14:59:23 CST 2020
//构造器二:创建指定毫秒数的Date对象
Date date1 = new Date(1594882763377L);
System.out.println(date1.toString());//Thu Jul 16 14:59:23 CST 2020
}
@Test
public void test2(){
//创建 java.sql.Date date对象
java.sql.Date date = new java.sql.Date(1594882763377L);
System.out.println(date); //2020-07-16
//将util.data转化为sql.data
Date date1 = new Date();
java.sql.Date date2 = new java.sql.Date(date1.getTime());
System.out.println(date2);//2020-07-16
}
SimpleDateFormat类
/*
SimpleDateFormat的使用:SimpleDateFormat对日期Date类的格式化和解析
1.两个操作:
1)格式化:日期--->字符串
2)解析:格式化逆过程,字符串---> 日期
2.SimpleDateFormat的实例化
*/
@Test
public void test() throws ParseException {
//实例化SimpleDateFormat
SimpleDateFormat sdf = new SimpleDateFormat();
//格式化:日期--->字符串
Date date = new Date();
String format = sdf.format(date);
System.out.println(format);// 20-7-16 下午3:20
//解析 字符串--->日期
String str = "20-7-16 下午3:20";
Date parse = sdf.parse(str);
System.out.println(parse); // Thu Jul 16 15:20:00 CST 2020
//格式化指定格式
SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
String format1 = sdf1.format(date);
System.out.println(format1); //2020-07-16 03:25:57
//解析(只认sdf1格式化格式的字符串)
Date parse1 = sdf1.parse("2020-07-16 03:25:57");
System.out.println(parse1);//Thu Jul 16 03:25:57 CST 2020
}
Calender类
/*
Calender日历类(抽象类)的使用 注:我今天是7月16号
*/
@Test
public void test1(){
//1.实例化调用静态方法
Calendar calendar = Calendar.getInstance();
//常用方法
//get 获得一些属性,比如今天是xx星期、xx月、xx年的第几天
int i = calendar.get(Calendar.DAY_OF_MONTH); //今天是这一月的第几天
int i1 = calendar.get(Calendar.DAY_OF_YEAR); //今天是这一月的第几天
System.out.println(i); //16
System.out.println(i1); //198
//set 可以手动设置是多少天
calendar.set(Calendar.DAY_OF_MONTH,22);
int i3 = calendar.get(Calendar.DAY_OF_MONTH);
System.out.println(i3); //22
//add 在原有的基础上加上3天
calendar.add(Calendar.DAY_OF_MONTH,3);
int i4 = calendar.get(Calendar.DAY_OF_MONTH);
System.out.println(i4); //25
//getTime 日历类对象-->java.util.Date对象
Date time = calendar.getTime();
System.out.println(time); //Sat Jul 25 15:47:02 CST 2020
//setTime java.util.Date-->日历类对象
Date d = new Date();
calendar.setTime(d);
int i5 = calendar.get(Calendar.DAY_OF_MONTH);
System.out.println(i5);//16
}
注意Calender类获取月份和星期时有偏移量
以上为JDK8以前的时间类型API
Jdk8中新的日期时间API
LocalDate、LocalTime、LocalDateTime
/*
jdk 8中日期时间API测试
LocalDate、LocalTime、LocalDateTime 的使用 注:我今天是7月16号
*/
@Test
public void test1(){
//实例化 now(获取当前的日期,时间,日期时间)
LocalDate localDate = LocalDate.now();
LocalTime localTime = LocalTime.now();
LocalDateTime localDateTime = LocalDateTime.now();
System.out.println(localDate); //2020-07-16
System.out.println(localTime); //16:04:54.827
System.out.println(localDateTime); //2020-07-16T16:04:54.827
//of() 设置指定的年月日,时分秒
LocalDateTime localDateTime1 = LocalDateTime.of(2020, 10, 6, 13, 23, 43);
System.out.println(localDateTime1); //2020-10-06T13:23:43
//getXxx()
System.out.println(localDateTime.getDayOfMonth()); //16 今天是本月第几天
System.out.println(localDateTime.getDayOfWeek()); //THURSDAY 今天是星期几
System.out.println(localDateTime.getMonth()); //JULY 本月是几月
System.out.println(localDateTime.getMonthValue()); //7 本月是几月转化为阿拉伯数字
}
JDK8中还有两个Instant类和DateTimeFormatter类没进行演示。
本文地址:https://blog.csdn.net/weixin_43373316/article/details/107395527
推荐阅读
-
Java基本类型包装类概述与Integer类、Character类用法分析
-
java 数值类型分秒时间格式化的实例代码
-
java DateUtil工具类时间戳类型转换详解
-
namevaluepair用法报文格式(java反射判断字段类型)
-
namevaluepair用法报文格式(java反射判断字段类型)
-
Java日期时间API系列12-----Jdk8中java.time包中的新的日期时间API类,日期格式化,常用日期格式大全
-
解析MySql与Java的时间类型
-
前端js日期控件传时间类型到java后台转Date类型
-
Java基础06-final、访问修饰符、内部类、引用类型用法总结
-
java时间格式大全