![](/img/trans.png)
[英]What is the difference between Calendar.WEEK_OF_MONTH and Calendar.DAY_OF_WEEK_IN_MONTH in Java's Calendar class?
[英]What's the difference between Calendar.getInstance().get(Calendar.DAY_OF_WEEK) and Calander.DAY_OF_WEEK in java
我是 Kotlin 的新手,在學習課程時,您在當前工作日進行了一些工作。
本課程使用這個 java 代碼來獲取它:
import java.util.*
Calendar.getInstance().get(Calendar.DAY_OF_WEEK)
但我不明白為什么Calendar.DAY_OF_WEEK
也不起作用,或者兩者之間有什么區別。 感謝您的解釋
Calendar.DAY_OF_WEEK
是一個常數,用於訪問日歷 object 中的字段。
Calendar.getInstance().get(Calendar.DAY_OF_WEEK)
使用這個常數從日歷中讀取“星期幾”字段的值。
這有點不尋常的設計。 日歷 class 的設計者沒有為所有日歷字段添加數十種方法,如“getDayOfWeek”、“setDayOfWeek”和“addDayOfWeek”,而是添加了“get”、“set”和“add”方法,這些方法將數字字段標識符作為參數。
請注意,日歷現在被認為是“舊版”class - 對於新代碼,最好使用java.time
package 中的類。 獲取星期幾的現代方法是:
DayOfWeek dow = LocalDate.now().getDayOfWeek();
我建議您不要使用來自java.util
package 的過時容易出錯的日期/時間 API。 使用來自java.time
package 的現代日期/時間API。 從Trail 了解更多信息:日期時間
import java.time.LocalDate;
public class Main {
public static void main(String[] args) {
System.out.println(LocalDate.now().getDayOfWeek());
System.out.println(LocalDate.now().getDayOfWeek().getValue());
}
}
Output:
SUNDAY
7
Calendar.DAY_OF_WEEK 也不起作用,或者兩者之間有什么區別。 感謝您的解釋
Calendar.DAY_OF_WEEK
是一個常量,表示get
和set
的字段編號,表示星期幾。
Calendar.DAY_OF_WEEK is simply a constant to tell the Calendar API which info you'd like to request: https://docs.oracle.com/javase/7/docs/api/java/util/Calendar.html#DAY_OF_WEEK
Calendar.getInstance() 為您提供一個 Calendar 實例。 這會將當前時區和本地時間等因素考慮在內。 get() 方法允許您使用上面的常量獲取信息。 https://docs.oracle.com/javase/7/docs/api/java/util/Calendar.html#get(int)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.