2013-02-27 76 views
0

我有這樣的代碼在我的項目爲什麼此代碼會生成不正確的數據?

Calendar subval = Calendar.getInstance(); 
    final int WOY= subval.WEEK_OF_YEAR; 

,當我檢查它的WOY的價值它輸出3,現在它是目前2013年2月25日,我知道週數是不是三個。我存儲這個值來幫助設置自動刷新時間,所以我能夠強制刷新以確保設備具有最新的數據。在刷新期間,一些重要的數據被存儲在本地。現在我需要一個可靠的固定時間段,並且我每週選擇一次,基本上如果「第一週」與「第一週設置數據的存儲值」不一樣,將在下次機會刷新,然後將當前的「第18周」存儲在設備上。我在1周內開始編碼,所以我沒有過渡到新的一週,所以我不確定它是否正常工作,但是三個值讓我害怕。

回答

4

WEEK_OF_YEAR是用來將get()方法的標誌。它的價值永遠不會改變。 你使用這樣的:

Calendar subval = Calendar.getInstance(); 
final int WOY= subval.get(Calendar.WEEK_OF_YEAR); 
+0

謝謝你現在的工作日食在這一個愚弄我說我可以使用我使用的格式,但它實際上是不正確的。任何想法是什麼3代表 – 2013-02-27 02:31:27

+0

3只是一個標誌:它是這樣的Calendar.get(詮釋標誌)可以說{如果(標誌== 3){返回some_method_to_calculate_the_week(); } – John3136 2013-02-27 04:01:00

2

Calendar.WEEK_OF_YEAR是一個常量,用於指定從Calendar實例返回哪個字段。取而代之的是價值分配給固定值,你需要調用Calendar#get

int WOY = subval.get(Calendar.WEEK_OF_YEAR); 
1

你需要得到像這樣

Calendar subval = Calendar.getInstance(); 
    int year=subval.get(Calender.Calendar.WEEK_OF_YEAR); 
1

Calendar.WEEK_OF_YEAR是一個靜態常量。

你需要調用calendar.get(Calendar.WEEK_OF_YEAR)

相關問題