示例代码:
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
import java.util.Date;
/**
* @author wh445306
* @version 1.0
* @Description DateFormat
* @Date 2023-04-06 17:10
*/
public class DateFormat {
public static void main(String[] args) throws ParseException {
Date currentTime = new Date();
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String dateString = formatter.format(currentTime);
System.out.println(dateString);
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy年MM月dd日HH时mm分ss秒");
String dateString2 = dateFormat.format(currentTime);
System.out.println(dateString2);
Date date1 = dateFormat.parse(dateString2);
String dateString3 = formatter.format(date1);
System.out.println(dateString3);
// 将日期字符串转换为LocalDate对象
LocalDate date = LocalDate.parse("2023-04-06");
// 将LocalDate对象格式化为指定格式的字符串
DateTimeFormatter formatter1 = DateTimeFormatter.ofPattern("yyyy年M月d日");
String formattedDate = date.format(formatter1);
System.out.println(formattedDate);
// 将格式化后的字符串转换为LocalDate对象
LocalDate parsedDate = LocalDate.parse(formattedDate, formatter1);
// 将LocalDate对象转换为指定格式的字符串
String parsedDateString = parsedDate.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"));
System.out.println(parsedDateString);
// 确认两个日期字符串相等
assert parsedDateString.equals("2023-04-06");
// 确认两个LocalDate对象相等
assert parsedDate.equals(date);
}
}
示例截图:
这里完整的用两种方法分别实现了日期和String的来回转换,鉴于SimpleDateFormat早已过时,且非线程安全,所以推荐大家首选使用DateTimeFormatter,用法基本都是差不多的。变化不大。但是DateTimeFormatter需要Java Level 8(8 – Lambdas, type annotations etc.),需留意。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/139884.html