Dan*_*orz 9 java string time localtime
我正在创建我的JavaFX应用程序,每次创建新的列表单元格时我都需要使用时间标签.我需要将带有当前时间的字符串HH:MM
直接放入Label构造函数中,该构造函数String
作为参数.
我发现并使用了java.util.Date
:
Label timeLabel = new Label(new SimpleDateFormat("HH:MM").format(new Date()));
Run Code Online (Sandbox Code Playgroud)
但它显示错误的时区,所以我将使用java.time
和LocalTime
上课.
有没有办法在一行中获得相同的字符串结果?谢谢您的帮助 :)
Man*_*dis 23
在新应用程序中使用Java 8类型(java.time)可能更好.您可以先创建一个DateTimeFormatter
:
DateTimeFormatter dtf = DateTimeFormatter.ofPattern("HH:mm");
Run Code Online (Sandbox Code Playgroud)
然后获取当前时间并格式化它:
Label timeLabel = new Label(LocalTime.now().format(dtf));
Run Code Online (Sandbox Code Playgroud)
LocalTime.now().format(DateTimeFormatter.ofPattern("HH:mm"))
Run Code Online (Sandbox Code Playgroud)
(这将使用默认语言环境,请参阅https://docs.oracle.com/javase/8/docs/api/java/time/format/DateTimeFormatter.html#ofPattern-java.lang.String-了解更多信息).
但更好的做法是将格式化程序放入static final
字段中.这样,它只创建一次,而不是每次行被执行.几乎可以肯定这个应用并不重要,但最好从一开始就养成良好的习惯.
归档时间: |
|
查看次数: |
20411 次 |
最近记录: |