我在Java 8中进行探索TemporalQuery和TemporalAccessor介绍TemporalAccessor似乎是专门为时间对象设计的,例如日期,时间,偏移或这些的某种组合.什么是时间对象?一些谷歌搜索给出了它的含义
随时间变化的对象
但是无法在Java的上下文中将其与此相关联?
根据与乔达,时间和JSR 310,问题,概念和方法 [ PDF ],则TemporalAccessor:
定义对临时对象的只读访问权限,例如日期,时间,偏移量或这些的某种组合
Fields和单位与抽象一起工作
Temporal,并TemporalAccessor提供一个访问的日期时间类的通用方式.
" Beginning Java 8 Fundamentals "一书:语言语法,数组,数据类型,对象和正则表达式说:
API中指定某种日期,时间或两者的所有类都是
TemporalAccesor.LocalDate,LocalTime,LocalDateTime,和ZoneDateTime是一些例子TemporalAccesor.
接下来是一个示例代码(基于上一本书中的一些示例):
Run Code Online (Sandbox Code Playgroud)public static boolean isFriday13(TemporalAccessor ta) { if (ta.isSupported(DAY_OF_MONTH) && ta.isSupported(DAY_OF_WEEK)) { int dayOfMonth = ta.get(DAY_OF_MONTH); int weekDay = ta.get(DAY_OF_WEEK); DayOfWeek dayOfWeek = DayOfWeek.of(weekDay); if (dayOfMonth == 13 && dayOfWeek == FRIDAY) { return true; } } return false; } public static void main(String[] args) { DateTimeFormatter formatter = DateTimeFormatter.ofPattern("MM/dd/yyyy"); TemporalAccessor ta = formatter.parse("02/13/2015"); LocalDate ld = LocalDate.from(ta); System.out.println(ld); System.out.println(isFriday13(ld)); }
| 归档时间: |
|
| 查看次数: |
4565 次 |
| 最近记录: |