树叶云鸿蒙OS教程:鸿蒙OS Currency

Currency

java.lang.Object

|—java.util.Currency

public final class Currency
extends Object
implements Serializable

代表一种货币。 货币由其 ISO 4217 货币代码标识。

该类的设计使得任何给定货币的 Currency 实例都不会超过一个。 因此,没有公共构造函数。 您可以使用 getInstance 方法获取 Currency 实例。

用户可以通过系统属性 java.util.currency.data 取代 Java 运行时货币数据。如果定义了此系统属性,则其值为属性文件的位置,其内容分别是 ISO 3166 国家代码和 ISO 4217 货币数据的键/值对。价值部分由货币的三个 ISO 4217 值组成,即字母代码、数字代码和次要单位。这三个 ISO 4217 值用逗号分隔。以’#’ 开头的行被视为注释行。如果用户需要指定一个转换日期来指示新数据何时生效,则可以为每个货币条目指定一个可选的 UTC 时间戳。时间戳附加到货币属性的末尾,并使用逗号作为分隔符。如果 UTC 日期戳存在且有效,则 JRE 将仅在当前 UTC 日期晚于类加载时指定的日期时使用新的货币属性。时间戳的格式必须是 ISO 8601 格式:’yyyy-MM-dd’T’HH:mm:ss’。例如,

示例货币属性 JP=JPZ,999,0

将取代日本的货币数据。

转换日期JP=JPZ,999,0,2014-01-01T00:00:00 的示例货币属性

如果在 2014 年 1 月 1 日 00:00:00 GMT 之后加载 Currency 类,将取代日本的货币数据。

如果遇到语法格式错误的条目,则忽略该条目并处理文件中的其余条目。 对于存在重复国家代码条目的情况,该货币的货币信息的行为是未定义的,并且文件中的其余条目将被处理。

方法总结

修饰符和类型方法描述
static SetCurrencygetAvailableCurrencies()获取可用货币的集合。
StringgetCurrencyCode()获取此货币的 ISO 4217 货币代码。
intgetDefaultFractionDigits()获取与此货币一起使用的默认小数位数。
StringgetDisplayName()获取适合在默认 Locale.Category#DISPLAY 语言环境中显示此货币的名称。
StringgetDisplayName(Locale locale)获取适合在指定区域显示此货币的名称。
static CurrencygetInstance(String currencyCode)返回给定货币代码的 Currency 实例。
static CurrencygetInstance(Locale locale)返回给定语言环境所在国家/地区的 Currency 实例。
intgetNumericCode()返回此货币的 ISO 4217 数字代码。
StringgetSymbol()获取默认 Locale.Category#DISPLAY 语言环境的该货币的符号。
StringgetSymbol(Locale locale)获取指定区域设置的此货币的符号。
StringtoString()返回此货币的 ISO 4217 货币代码。
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

方法详情

getInstance

public static Currency getInstance(String currencyCode)

返回给定货币代码的 Currency 实例。

参数:

参数名称参数描述
currencyCode货币的 ISO 4217 代码

返回:

给定货币代码的 Currency 实例

Throws:

Throw名称Throw描述
NullPointerException如果currencyCode 为空
IllegalArgumentException如果 currencyCode 不是受支持的 ISO 4217 代码。

getInstance

public static Currency getInstance(Locale locale)

返回给定语言环境所在国家/地区的 Currency 实例。 语言环境的语言和变体组件被忽略。 随着各国货币的变化,结果可能会随时间而变化。 例如,对于欧洲货币联盟的原始成员国,该方法返回截至2001年12月31日的旧国家货币,以及从各自国家当地时间2002年1月1日开始的欧元。

对于没有货币的地区,例如南极洲,该方法返回 null。

参数:

参数名称参数描述
locale需要货币实例的国家/地区的语言环境

返回:

给定语言环境的国家/地区的 Currency 实例,或 null

Throws:

Throw名称Throw描述
NullPointerException如果语言环境或其国家代码为空
IllegalArgumentException如果给定区域设置的国家/地区不是受支持的 ISO 3166 国家/地区代码。

getAvailableCurrencies

public static SetCurrency getAvailableCurrencies()

获取可用货币的集合。 返回的货币集包含所有可用货币,其中可能包括表示过时 ISO 4217 代码的货币。 可以修改该集合而不影响运行时中的可用货币。

返回:

可用货币的集合。 如果运行时中没有可用的货币,则返回的集合为空。

getCurrencyCode

public String getCurrencyCode()

获取此货币的 ISO 4217 货币代码。

返回:

此货币的 ISO 4217 货币代码。

getSymbol

public String getSymbol()

获取默认 Locale.Category#DISPLAY 语言环境的该货币的符号。 例如,对于美元,如果默认语言环境是美国,则符号是“$”,而对于其他语言环境,它可能是“US$”。 如果无法确定符号,则返回 ISO 4217 货币代码。

这相当于调用 getSymbol(Locale.getDefault(Locale.Category.DISPLAY))。

返回:

默认 Locale.Category#DISPLAY 语言环境的该货币的符号

getSymbol

public String getSymbol(Locale locale)

获取指定区域设置的此货币的符号。 例如,对于美元,如果指定的语言环境是美国,则符号是“$”,而对于其他语言环境,它可能是“US$”。 如果无法确定符号,则返回 ISO 4217 货币代码。

参数:

参数名称参数描述
locale需要此货币的显示名称的语言环境

返回:

指定语言环境的该货币符号

Throws:

Throw名称Throw描述
NullPointerException如果语言环境为空

getDefaultFractionDigits

public int getDefaultFractionDigits()

获取与此货币一起使用的默认小数位数。 例如,欧元的默认小数位数为 2,而日元的默认位数为 0。对于伪货币(如 IMF 特别提款权),返回 -1。

返回:

此货币使用的默认小数位数

getNumericCode

public int getNumericCode()

返回此货币的 ISO 4217 数字代码。

返回:

该货币的 ISO 4217 数字代码

getDisplayName

public String getDisplayName()

获取适合在默认 Locale.Category#DISPLAY 语言环境中显示此货币的名称。 如果没有为默认语言环境找到合适的显示名称,则返回 ISO 4217 货币代码。

这相当于调用 getDisplayName(Locale.getDefault(Locale.Category.DISPLAY))。

返回:

默认 Locale.Category#DISPLAY 语言环境的此货币的显示名称

getDisplayName

public String getDisplayName(Locale locale)

获取适合在指定区域显示此货币的名称。 如果没有为指定区域找到合适的显示名称,则返回 ISO 4217 货币代码。

参数:

参数名称参数描述
locale需要此货币的显示名称的语言环境

返回:

指定区域设置的此货币的显示名称

Throws:

Throw名称Throw描述
NullPointerException如果语言环境为空

toString

public String toString()

返回此货币的 ISO 4217 货币代码。

覆盖:

类 Object 中的 toString

返回:

此货币的 ISO 4217 货币代码

文章来源网络,作者:管理,如若转载,请注明出处:https://shuyeidc.com/wp/191089.html<

(0)
管理的头像管理
上一篇2025-03-31 23:24
下一篇 2025-03-31 23:26

相关推荐

  • 云服务器和云虚拟主机怎么选?云服务器和虚拟主机区别

    云服务器适合业务增长快、需弹性扩展的场景,而云虚拟主机适合预算有限、技术门槛低的小型静态网站或测试环境,二者核心区别在于资源独享性与运维复杂度,核心差异解析:从底层架构到使用体验很多人容易混淆这两者,觉得它们都是“买空间建站”,它们的底层逻辑完全不同,云服务器(ECS)就像是你租了一整栋别墅,水电网络独立,你想……

    2026-06-29
    0
  • 赣州智慧旅游招聘是真的吗?赣州旅游人才招聘信息

    中级岗位(3-5年经验)月薪范围通常在6000-10000元,这类岗位需要独立负责项目模块,如独立运营一个抖音账号,或维护一个景区小程序的功能迭代,具备成功案例的候选人议价能力较强,高级岗位(5年以上经验)月薪范围通常在10000-20000元,部分核心管理岗可达更高,这类人才需要具备战略规划能力,如制定整个景……

    2026-06-29
    0
  • 赣州智能物联网车位锁如何管理?智能车位锁管理系统多少钱

    赣州智能物联网车位锁管理的核心在于通过云端平台实现远程控锁、状态实时监控及自动计费,彻底解决传统车位“被占难管”与“找位难”的痛点,在赣州这样的城市,随着机动车保有量的持续增长,老旧小区、商业综合体以及私人固定车位的资源矛盾日益凸显,传统的机械地锁或简易遥控锁,不仅操作繁琐,更无法实现数据化管理,引入智能物联网……

    2026-06-29
    0
  • 赣州智能消防栓好用吗,智能消防栓多少钱一个

    赣州智能消防栓通过物联网技术实现实时监测与远程报警,能显著降低火灾响应时间并提升城市消防安全管理水平,是目前智慧城市建设中不可或缺的基础设施,赣州智能消防栓的核心价值与应用场景传统消防栓往往存在“看不见、摸不着、用不了”的痛点,在赣州这样地形复杂、老城区与新城区并存的区域,传统设施的管理难度极大,智能消防栓的出……

    2026-06-29
    0
  • 云服务器和物理机到底有啥区别?

    云服务器本质上是虚拟化资源池中的弹性实例,而传统物理服务器是独占的硬件实体,前者胜在弹性与运维便捷,后者强在物理隔离与性能稳定,具体选择取决于业务对成本、扩展性及安全合规的权衡,很多人初次接触服务器时,容易把“云服务器”和“传统物理服务器”混为一谈,觉得它们都是用来跑网站或存数据的盒子,这两者的底层逻辑完全不同……

    2026-06-29
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注