Mee*_*eep 2 android locale calendar dayofweek java-time
我想看看我们是否可以按区域设置排列工作日。例如,在美国语言环境中,我们将从星期日开始,而法国将从星期一开始(就日历而言)。为了理解它,我正在制作一个闹钟应用程序,其中工作日的闹钟会在某些日子重复 -
以下是我所看到的工作日未按顺序排列的
new DateFormatSymbols().getShortWeekdays();
0 = ""
1 = "Sun"
2 = "Mon"
3 = "Tue"
4 = "Wed"
5 = "Thu"
6 = "Fri"
7 = "Sat"
0 = ""
1 = "dim."
2 = "lun."
3 = "mar."
4 = "mer."
5 = "jeu."
6 = "ven."
7 = "sam."
Run Code Online (Sandbox Code Playgroud)
public static void printWeekdays(Locale loc) {\n WeekFields wf = WeekFields.of(loc);\n DayOfWeek day = wf.getFirstDayOfWeek();\n for (int i = 0; i < DayOfWeek.values().length; i++) {\n System.out.println(day.getDisplayName(TextStyle.SHORT, loc));\n day = day.plus(1);\n }\n}\nRun Code Online (Sandbox Code Playgroud)\n\n让\xe2\x80\x99s 尝试一下:
\n\n printWeekdays(Locale.US);\nRun Code Online (Sandbox Code Playgroud)\n\n该调用的输出是:
\n\n\n\n\nRun Code Online (Sandbox Code Playgroud)\nSun\nMon\nTue\nWed\nThu\nFri\nSat\n
或者用法语:
\n\n printWeekdays(Locale.FRANCE);\nRun Code Online (Sandbox Code Playgroud)\n\n现在 Monday/lundi 排在第一位,当然是法语:
\n\n\n\n\nRun Code Online (Sandbox Code Playgroud)\nlun.\nmar.\nmer.\njeu.\nven.\nsam.\ndim.\n
是的,java.time 在旧版和新版 Android 设备上都能很好地工作。它只需要至少Java 6。
\n\norg.threeten.bp子包中导入日期和时间类。java.time.java.time。java.time到 Java 6 和 7(ThreeTen for JSR-310)。