java基础之日期与字符串的任意转换
前言:
本文主要讲述如何将日期类型转化为字符串类型,以及将字符串类型转化为日期类型,一看就懂,一学就会!
日期转字符串:
1.创建日期对象:
LocalDate now=LocalDate.now();
2.创建字符串的格式化模版:
DataTimeFormatter dataTimeFormatter1=DateTimeFormatter.ofPattern(yyyy年WW月dd天);
//日期转字符串
LocalDate now = LocalDate.now();
System.out.println(now);
DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy年MM月dd天");
String format = now.format(dateTimeFormatter);
System.out.println(format);
formatter的意思是格式化,这段代码的意思就是将日期格式化,按照我们规定的格式转化为字符串。
字符串转日期:
//字符串转日期
String s="2022年-10月-21号";
DateTimeFormatter dateTimeFormatter1 = DateTimeFormatter.ofPattern("yyyy年-MM月-dd号");
LocalDate parse = LocalDate.parse(s, dateTimeFormatter1);
System.out.println(parse);
parse的意思是转化,上面的核心代码如下
DateTimeFormatter dateTimeFormatter1 = DateTimeFormatter.ofPattern("yyyy年-MM月-dd号");
LocalDate parse = LocalDate.parse(s, dateTimeFormatter1);
意思就是将字符串中的年,月,日的数值通过y,M,d来提取出来。然后转化为日期。
ps:LocalDateTime具有年,月,日,时,分,秒。采用y,M,d,H,m,s来提取出来,转换为日期
补充:
如果字符串的形式本身就与日期形式匹配,那么就不需要在定义格式化模版了
例子:
String str="2022-11-15"
此字符串形式与LocalDate输出的形式匹配可以不需要额外格式化。
举一反三:
String str="2022-11-15T00:27:53.773"
此形式的字符串满足LocalDateTime的输出格式所以也不需要自定义模版,通过y,M,d等来提取。
希望这篇文章可以帮到你。
