是语言或基于国家对JVM第一天的一周?

问题描述 投票:6回答:2

人们可以通过调用Calendar.getInstance(locale).getFirstDayOfWeek()获得一周的JVM上的第一天。然而,就是这个信息的语言基础,或以国家为基础?

java calendar jvm
2个回答
6
投票

事实证明,这是JDK版本相关。 JDK8返回基于语言周的第一天,所以它返回SUNDAY "en_FI" "en_US"MONDAY"fi_FI""fi_US"

然而,JDK9切换到哪个(更多逻辑上)使用国家CLDR系统。所以,JDK9将返回MONDAY既为"en_FI""fi_FI"语言环境,并且将返回SUNDAY"fi_US""en_US"

JEP 252了解更多详情。

此外,从JDK-8203280引用:

为了说明添加到这种行为,CLDR实现是正确的,即一周的第一天应该由区域不是由语言定义。


1
投票

根据该文件,它是国家为基础的:https://docs.oracle.com/javase/7/docs/api/java/util/Calendar.html#getFirstDayOfWeek()

获取一周的第一天是什么;例如,星期日在美国,MONDAY在法国。

© www.soinside.com 2019 - 2024. All rights reserved.