Java String转Date的基本方法
在Java中,我们经常需要使用日期,而一般情况下日期都以字符串的形式出现。当然,我们也需要将字符串转化成日期类型,这就需要用到Java中的日期转化。简单来说,Java String转Date有以下几种基本方法:
- 使用SimpleDateFormat
- 使用DateTimeFormatter
- 使用Java 8中的新API
使用SimpleDateFormat转化Date类型
使用SimpleDateFormat是最常见的方法,我们首先需要在代码中new一个SimpleDateFormat对象,定义好日期格式的pattern,然后使用该对象的parse()函数将字符串类型的日期转化成Date类型。下面是演示代码:
```
import java.text.SimpleDateFormat;
import java.util.Date;
public class StringToDate {
public static void main(String[] args) {
String str = "2021-08-22";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date date = sdf.parse(str);
System.out.println(date);
}
}
```
运行以上代码,输出结果为:
Mon Aug 02 00:00:00 CST 2021
注:输出结果会因为时区的不同而有所不同。
使用DateTimeFormatter转化Date类型
Java 8中引入了新的日期API,其中就包括DateTimeFormatter类,这个类扩展了SimpleDateFormat,更加灵活。下面是使用DateTimeFormatter类转化String类型的日期为Date类型的代码:
```
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
public class StringToDate {
public static void main(String[] args) {
String str = "2021-08-22";
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
LocalDate date = LocalDate.parse(str, formatter);
System.out.println(date);
}
}
```
运行以上代码,输出结果为:
2021-08-22
使用Java 8中的新API转化Date类型
除了DateTimeFormatter,Java 8中的新API还包括LocalDate, LocalTime, LocalDateTime等有关日期、时刻、日期时间相关的API类,使用这些类转化String类型的日期也是非常方便。下面是使用LocalDate类进行转化的代码:
```
import java.time.LocalDate;
public class StringToDate {
public static void main(String[] args) {
String str = "2021-08-22";
LocalDate date = LocalDate.parse(s, LocalDate.ofPattern("yyyy-MM-dd"));
System.out.println(date);
}
}
```
运行以上代码,输出的结果和使用DateTimeFormatter转化Date类型的输出结果是相同的。
总结
Java String转Date有多种基本方法,一般情况下我们会使用SimpleDateFormat,如果使用Java 8的新API,我们还可以使用DateTimeFormatter、LocalDate等类来进行转换。不管使用何种方法,关键在于定义好日期格式的pattern,避免出现不必要的错误。
本文来自投稿,不代表亲测学习网立场,如若转载,请注明出处:https://www.qince.net/javapeixun6y4.html
郑重声明:
本站所有内容均由互联网收集整理、网友上传,并且以计算机技术研究交流为目的,仅供大家参考、学习,不存在任何商业目的与商业用途。 若您需要商业运营或用于其他商业活动,请您购买正版授权并合法使用。
我们不承担任何技术及版权问题,且不对任何资源负法律责任。
如遇到资源无法下载,请点击这里失效报错。失效报错提交后记得查看你的留言信息,24小时之内反馈信息。
如有侵犯您的版权,请给我们私信,我们会尽快处理,并诚恳的向你道歉!