java - 如何使用 JVM 参数为 java.util.Calendar 指定 firstDayOfWeek

标签 java calendar jvm-arguments

我正在尝试将 java.util.Calendar 的默认 firstDayOfWeek 从 SUNDAY 更改为 MONDAY。是否可以通过JVM配置而不是添加这段代码来实现?

cal.setFirstDayOfWeek(Calendar.MONDAY);

最佳答案

一周的第一天源自当前语言环境。如果您不设置日历的区域设置( Calendar.getInstance(Locale)new GregorianCalendar(Locale) ),它将使用系统的默认设置。系统的默认值可以被 JVM 参数覆盖:

public static void main(String[] args) {
    Calendar c = new GregorianCalendar();
    System.out.println(Locale.getDefault() + ": " + c.getFirstDayOfWeek());
}

对于语言/国家/地区,这应该显示具有不同 JVM 参数的不同输出:

  • -Duser.language=en -Duser.country=US -> en_US: 1 (星期日)
  • -Duser.language=en -Duser.country=GB -> en_GB: 2 (星期一)

不要忘记这也可能改变其他行为。

关于java - 如何使用 JVM 参数为 java.util.Calendar 指定 firstDayOfWeek,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/269486/

相关文章:

java - 如何读取 logback.xml 中的环境变量或属性并在每个日志行中打印该属性

java - findbugs 反对匿名内部类

Java ForkJoin Future 似乎提前完成

java - 将 Stream<T> 映射到正在计数的 Map<T, Long>?

java - 如何通过 Ant - Swing 传递 jvm 参数

java vm 选项和 AWS::ECS::TaskDefinition

Java循环遍历数组的一半

r - 在 R 中更改日历热图上的天数顺序

android - 日历 getFirstDayOfWeek 到星期日

javascript - 如何在 asp.net 弹出表单上编写日期选择器代码