Java 的时间日期 API 一直以来都是被诟病的东西,为了解决这一问题,Java 8 中引入了新的时间日期 API,其中包括 LocalDate、LocalTime、LocalDateTime、Clock、Instant 等类,这些的类的设计都使用了不变模式,因此是线程安全的设计。
public class DateFormatTest { public static void main(String[] args) { //通过Calendar获取日期 Calendar calendar = Calendar.getInstance(); Date date = calendar.getTime(); //通过Date获取日期 Date date1 = new Date(); SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy/MM/dd"); SimpleDateFormat simpleDateFormat1 = new SimpleDateFormat("YYYY/MM/dd"); System.out.println(simpleDateFormat1.format(date1)); // java8的日期格式化 //通过LocalDateTime获取日期和时间 LocalDateTime now = LocalDateTime.now(); DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy/MM/dd HH:mm:ss"); System.out.println(now.format(dateTimeFormatter)); } }
将字符串转换为日期和时间
public class Str2Date { public static void main(String[] args) { String dateStr = "2019年2月23号"; SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy年MM月dd号"); SimpleDateFormat dateFormat2 = new SimpleDateFormat("yyyy/MM/dd"); try { Date date = dateFormat.parse(dateStr); System.out.println(dateFormat2.format(date)); } catch (ParseException e) { e.printStackTrace(); } } }