2015-02-05 73 views
4

我導航跨越的Java 8日期和時間新的API,我不能再往前走,我無法找到網頁我希望你是點燃這個問題有什麼好的資源。的Java 8日期和時間時間場

我簡單的源代碼是

final LocalDate date = LocalDate.now(); 
date.get(TemporalField field) 

,我得到的源代碼,我看到。

public int get(TemporalField field) 
    Gets the value of the specified field from this date as an int. 

我的問題是我怎麼能得到TemporalField或者是獲得此代碼工作的最簡單的方法..

final int value = date.get(????); 

這個工程由於JB Nizet

date.get(java.time.temporal.ChronoField.ALIGNED_DAY_OF_WEEK_IN_MONTH); 

API。

http://docs.oracle.com/javase/8/docs/api/java/time/temporal/ChronoField.html 
+2

看看javadoc:http://docs.oracle.com/javase/8/docs/api/java/time/temporal/TemporalField.html。只是在類型名稱下面,它說:*所有已知的實現類:ChronoField * – 2015-02-05 20:19:05

+0

是的,但我需要一個運行的例子:(因爲我有嘗試... date.get(ChronoField。???);並且似乎不工作... – chiperortiz 2015-02-05 20:21:46

+1

然後把你在你的問題嘗試的代碼,並準確地定義什麼「不似乎工作」的意思。 – 2015-02-05 20:24:20

回答

7

有許多的方式來獲得的TemporalField實例。

首先,枚舉ChronoField實現TemporalField幷包含各種常數。

ChronoField.ALIGNED_WEEK_OF_YEAR; 

其次,類IsoFieldsJulianFields包含靜態TemporalField對象。

IsoFields.QUARTER_OF_YEAR; 
JulianFields.JULIAN_DAY; 

第三,類WeekFields包含靜態TemporalField對象和方法來創建基於關閉WeekFields TemporalField對象。

WeekFields.WEEK_BASED_YEARS; 
WeekFields.SUNDAY_START.weekOfMonth(); 
+0

我選擇你的答案,因爲有重要的和額外的,非常好的信息... – chiperortiz 2015-02-05 20:35:57

5

TemporalField的的Javadoc說,右有:

「最常使用的單元在ChronoField定義此外字段在IsoFields,WeekFields和JulianFields供給字段也可以由應用程序代碼寫入。通過實現這個接口。「

選擇你想從這些領域得到什麼。