Abh*_*rya 1 java datetime android
我一直在研究一个简单的基于字典的Android应用程序,所以我想要搜索在开发中使用的最佳实践.所以我搜索了获取时间和日期的最佳方法,但我发现这么多的方法都产生了日期和时间.
在这里,我找到了多种方法来获取格式化的时间和日期.
代码片段
对于java.util.Date,只需创建一个新的Date()
DateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
Date date = new Date();
System.out.println(dateFormat.format(date)); //2016/11/16 12:08:43
Run Code Online (Sandbox Code Playgroud)
对于java.util.Calendar,使用Calendar.getInstance()
DateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
Calendar cal = Calendar.getInstance();
System.out.println(dateFormat.format(cal)); //2016/11/16 12:08:43
Run Code Online (Sandbox Code Playgroud)
对于java.time.LocalDateTime,使用LocalDateTime.now()
DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy/MM/dd HH:mm:ss");
LocalDateTime now = LocalDateTime.now();
System.out.println(dtf.format(now)); //2016/11/16 12:08:43
Run Code Online (Sandbox Code Playgroud)
对于java.time.LocalDate,使用LocalDate.now()
DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy/MM/dd");
LocalDate localDate = LocalDate.now();
System.out.println(dtf.format(localDate)); //2016/11/16
Run Code Online (Sandbox Code Playgroud)
为什么有这么多方法在java中获取日期时间?还有什么是获取日期和时间的最佳方法?
因为日期和时间是复杂的事情,如如何处理货币以及如何将文本转换为字节和返回.
您应该使用java.timeJava 8中引入的软件包,因为它们已经修复了一些东西,并试图让它变得不那么烦人和怪异.它基于Joda-Time,这是一个经过深思熟虑的图书馆.
Date并且Calendar是旧的时间/日期API的一部分,虽然没有那么多的API,但是这些类仍然java.util存在并且存在许多设计问题.它们仍然有效,但你不应该在新代码中真正使用它们.不是因为他们被弃用(他们不是),而是因为他们很糟糕.试想一下,Date就是Instant喜欢Vector是ArrayList.