Java如何将LocalTime格式化为字符串

使用LocalTime.format(DateTimeFormatter)方法将本地时间格式化为所需的字符串表示形式。

DateTimeFormatter formatter = DateTimeFormatter.ofPattern("HH.mm");
LocalTime today = LocalTime.now();
String timeString = today.format(formatter);	//12.38

Java 如何修改当地时间

LocalTime提供了以下方法,可用于获取相对于可用本地时间实例的新本地时间实例。

  • plusHours()
  • plusMinutes()
  • plusSeconds()
  • plusNanos()
  • minusHours()
  • minusMinutes()
  • minusSeconds()
  • minusNanos()
LocalTime now = LocalTime.now();
//3 hours later
LocalTime localTime1 = now.plusHours(3);	
//3 minutes earliar
LocalTime localTime2 = now.minusMinutes(3);

LocalTime类声明

public final class LocalTime
	extends Object
	implements Temporal, TemporalAdjuster, Comparable<LocalTime>, Serializable
{
	//class body
}
欢迎来到之路教程(on itroad-com)

Java 如何将字符串解析为LocalTime

LocalTime类有两个重载的 parse() 方法将字符串中的时间转换为本地时间实例。

parse(CharSequence text)	//1
parse(CharSequence text, DateTimeFormatter formatter)	//2
  • 如果字符串包含ISO_LOCAL_TIME模式中的时间,则使用第一种方法,例如:[HH]:[mm]:[ss]。这是 Java 中本地时间的默认模式。
  • 对于任何其他时间模式,我们需要使用第二种方法,将时间作为字符串以及表示该时间字符串模式的格式化程序。
//1 - default time pattern
String time = "08:20:45.123456789";
LocalTime localTimeObj = LocalTime.parse(time);
//2 - specific time pattern
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("HH.mm.ss.nnn");
String time = "08.20.45.123456789";
LocalTime localTimeObj = LocalTime.parse(time, formatter);
java.time.LocalTime 类

Java 8 中引入的 java.time.LocalTime 类表示一个本地时间对象,没有日期或者时区信息作为时-分-秒部分。

它代表纳秒精度的时间,例如09:25:59.123456789

请注意,LocalTime实例是不可变的和线程安全的。

如何在Java中创建LocalTime

通常,我们会在两种情况下创建本地时间实例,例如:获取当前时间或者为指定时间戳创建本地时间。

Java获取当前当地时间

使用以下方法获取当前本地时间。

LocalTime now = LocalTime.now();

Java创建指定的本地时间

要创建具有特定小时、分钟和秒的本地时间,请使用以下方法。

LocalTime ltObject1 = LocalTime.of(08, 20, 45);	
LocalTime ltObject2 = LocalTime.of(08, 20, 45, 123456789);
LocalTime ltObject3 = LocalTime.parse("08:20");
LocalTime ltObject4 = LocalTime.parse("08:20:45.123456789");
日期:2020-09-17 00:09:37 来源:oir作者:oir