上海手机网站建设方案,城乡建设网站首页,网站建设试题及答案,北京网络科技公司简介目录 1.0 DateTimeFormatter 类的说明 1.1 如何创建格式化器的对象呢#xff1f; 1.2 DateTimeFormatter 类中的 format#xff08;LocalDateTime  ldt#xff09; 实例方法 2.0 Period 类的说明 2.1 Period 类中的 between(localDate1,localDate2) 静态方法来创建对象。 3.…目录 1.0 DateTimeFormatter 类的说明 1.1 如何创建格式化器的对象呢 1.2 DateTimeFormatter 类中的 formatLocalDateTime  ldt 实例方法 2.0 Period 类的说明 2.1 Period 类中的 between(localDate1,localDate2) 静态方法来创建对象。 3.0 Duration 类的说明 4.0 小结 API                 1.0 DateTimeFormatter 类的说明 是 Java 8 新增的一个类用于格式化和解析日期时间对象。它提供了一系列的预定义格式化模式也支持自定义格式化模式。使用 DateTimeFormatter 类可以将日期时间对象转换为字符串也可以将字符串转换为日期时间对象。 1.1 如何创建格式化器的对象呢 可以通过 ofPattern(String pattern) 静态方法来创建格式化器的对象。这里 String pattern 指的是自定的格式其中 yyyy年、MM月、dd日、HH时、mm分、ss秒、EEE星期几、a上午或者下午 
代码如下 import java.time.format.DateTimeFormatter;public class Text_DateTimeFormatter {public static void main(String[] args) {DateTimeFormatter dtf  DateTimeFormatter.ofPattern(yyyy-MM-dd HH:mm:ss EEE a);}
}可以简单的理解这类的作用就是自己定义一个格式然后给日期时间对象提供格式转变为字符串或者是将已经格式化好的字符串转变为日期时间的对象。 1.2 DateTimeFormatter 类中的 formatLocalDateTime  ldt 实例方法 通过 formatLocalDateTime  ldt 实例方法从 LocalDateTime 对象转变为以字符串输出的格式化的日期时间将日期时间对象格式化为字符串。 
代码如下 import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;public class Text_DateTimeFormatter {public static void main(String[] args) {DateTimeFormatter dtf  DateTimeFormatter.ofPattern(yyyy-MM-dd HH:mm:ss EEE a);LocalDateTime ldt  LocalDateTime.now();System.out.println(dtf.format(ldt));}
}运行结果如下  补充还可以用 LocalTimeFormatter 类的 formatter 的实例方法效果是一样的。 
代码如下 import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;public class Text_DateTimeFormatter {public static void main(String[] args) {DateTimeFormatter dtf  DateTimeFormatter.ofPattern(yyyy-MM-dd HH:mm:ss EEE a);LocalDateTime ldt  LocalDateTime.now();String b  dtf.format(ldt);String a  ldt.format(dtf);System.out.println(a);System.out.println(b);}
} 运行结果如下  1.3 LocalDateTime 类中的 parse(CharSequence text, DateTimeFormatter formatter) 实例方法 可以将字符串解析为日期时间对象。 
代码如下 import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;public class Text_DateTimeFormatter {public static void main(String[] args) {DateTimeFormatter dtf  DateTimeFormatter.ofPattern(yyyy-MM-dd HH:mm:ss);String str  2028-12-12 09:30:30;LocalDateTime ldt  LocalDateTime.parse(str,dtf);System.out.println(ldt);}
} 运行结果如下  2.0 Period 类的说明 可以用于计算两个 LocalDate 对象相差的年数、月数、天数。 2.1 Period 类中的 between(localDate1,localDate2) 静态方法来创建对象。 
代码如下 import java.time.Period;public class Text_DateTimeFormatter {public static void main(String[] args) {LocalDate localDate1  LocalDate.of(2026,12,12);LocalDate localDate2  LocalDate.of(2028,12,12);Period period  Period.between(localDate1,localDate2);//相差的年数System.out.println(period.getYears());//相差的月数System.out.println(period.getMonths());//相差的天数System.out.println(period.getDays());}
} 运行结果  3.0 Duration 类的说明 可以用于计算两个时间对象相差的天数、小时数、分数、秒数、纳秒数支持 LocalTime、LocalDateTime、Instant等时间。 
代码如下 import java.time.*;public class Text_DateTimeFormatter {public static void main(String[] args) {LocalDateTime localDateTime1  LocalDateTime.of(2023,12,12,13,13,22);LocalDateTime localDateTime2  LocalDateTime.of(2023,12,12,14,13,22);Duration duration  Duration.between(localDateTime1,localDateTime2);System.out.println(duration.toDays());System.out.println(duration.toHours());System.out.println(duration.toMinutes());System.out.println(duration.getSeconds());System.out.println(duration.toMillis());}}           需要注意的是得到相差数大多数是用 to 开头少数用 get 开头。        运行结果如下           4.0 小结 DateTimeFormatter 类用于格式化和解析日期时间对象可以将日期时间对象转换为字符串也可以将字符串转换为日期时间对象。它提供了一系列的预定义格式化模式也支持自定义格式化模式。 Period 类用于表示日期之间的差距可以表示年、月、日之间的差距。它可以用于计算和操作日期对象之间的差距例如计算两个日期之间相差几天、几个月、几年等。 Duration 类用于表示时间之间的差距可以表示小时、分钟、秒、毫秒、纳秒之间的差距。它可以用于计算和操作时间对象之间的差距例如计算两个时间之间相差几小时、几分钟、几秒等。 
这三个类的使用示例 // DateTimeFormatter 类示例
DateTimeFormatter formatter  DateTimeFormatter.ofPattern(yyyy-MM-dd HH:mm:ss);
String formattedDateTime  LocalDateTime.now().format(formatter);
System.out.println(formattedDateTime);// Period 类示例
LocalDate date1  LocalDate.of(2023, 10, 15);
LocalDate date2  LocalDate.of(2024, 10, 15);
Period period  Period.between(date1, date2);
System.out.println(period.getYears()   years,   period.getMonths()   months,   period.getDays()   days);// Duration 类示例
LocalTime time1  LocalTime.of(10, 30, 0);
LocalTime time2  LocalTime.of(12, 0, 0);
Duration duration  Duration.between(time1, time2);
System.out.println(duration.toHours()   hours,   duration.toMinutes()   minutes,   duration.getSeconds()   seconds);