Spec-Zone.ru › OpenJDK 21

Класс Currency

java.lang.Object
java.util.Currency
Все реализуемые интерфейсы:
Serializable
public final class Currency extends Object implements Serializable
Представляет валюту. Валюты идентифицируются их кодами валют ISO 4217. Более подробную информацию можно найти на сайте ISO.

Класс разработан таким образом, что для каждой валюты существует не более одного Currency экземпляра. Поэтому нет публичного конструктора. Вы получаете экземпляр Currency используя методы getInstance.

Пользователи могут заменить данные о валюте Java runtime с помощью системной переменной java.util.currency.data. Если эта системная переменная определена, то ее значение — это местоположение файла свойств, содержимое которого — пары «ключ/значение» кодов стран ISO 3166 и данных валют ISO 4217 соответственно. Значение части состоит из трех значений ISO 4217 валюты, т. е. буквенного кода, числового кода и наименьшей единицы. Эти три значения ISO 4217 разделены запятыми. Строки, начинающиеся с символа '#', считаются комментариями. Необязательный отметка времени UTC может быть указана для каждой записи о валюте, если пользователям необходимо указать дату перехода, указывая, когда вступают в силу новые данные. Отметка времени добавляется в конец свойств валюты и отделяется запятой. Если отметка времени UTC присутствует и корректна, JRE будет использовать новые свойства валюты только в том случае, если текущая дата UTC более поздняя, чем дата, указанная во время загрузки класса. Формат отметки времени должен соответствовать формату ISO 8601: 'yyyy-MM-dd'T'HH:mm:ss'. Например,

#Sample currency properties
JP=JPZ,999,0

заменит данные о валюте Японии. Если JPZ является одним из существующих кодов валюты ISO 4217, используемых другими странами, существующие данные валюты JPZ обновляются с заданными числовым кодом и значением наименьшей единицы.

#Sample currency properties with cutover date
JP=JPZ,999,0,2014-01-01T00:00:00

заменит данные о валюте Японии, если класс Currency загружается после 1 января 2014 года 00:00:00 по Гринвичу.

В случае синтаксических ошибок в записях запись игнорируется, и остальные записи в файле обрабатываются. В случаях, когда существуют дублирующиеся записи кодов стран, поведение информации о валюте для этой Currency является неопределенным, и остальные записи в файле обрабатываются.

Если встречаются несколько записей свойств с одинаковым кодом валюты, но разными числовыми кодами и/или наименьшими единицами, эти записи игнорируются, и остальные записи в файле обрабатываются.

Рекомендуется использовать класс BigDecimal при работе с Currency или денежными значениями, так как он обеспечивает лучшую обработку чисел с плавающей запятой и их операций.

С момента:
1.4
Внешние спецификации
  • ISO - ISO 4217 - Коды валют
См. также:
  • BigDecimal
  • Сerializied Form

Краткое описание методов

Модификатор и тип Метод Описание
static Set<Currency> getAvailableCurrencies()
Возвращает набор доступных валют.
String getCurrencyCode()
Возвращает код валюты ISO 4217 этой валюты.
int getDefaultFractionDigits()
Возвращает число знаков после запятой, используемых по умолчанию с этой валютой.
String getDisplayName()
Возвращает имя, подходящее для отображения этой валюты для локального языка по умолчанию DISPLAY.
String getDisplayName(Locale locale)
Возвращает имя, подходящее для отображения этой валюты для указанного локального языка.
static Currency getInstance(String currencyCode)
Возвращает Currency экземпляр для указанного кода валюты.
static Currency getInstance(Locale locale)
Возвращает Currency экземпляр для страны указанного локального языка.
int getNumericCode()
Возвращает числовой код ISO 4217 этой валюты.
String getNumericCodeAsString()
Возвращает 3-значный числовой код ISO 4217 этой валюты в виде String.
String getSymbol()
Возвращает символ этой валюты для локального языка по умолчанию DISPLAY.
String getSymbol(Locale locale)
Возвращает символ этой валюты для указанного локального языка.
String toString()
Возвращает код валюты 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 для заданного кода валюты
Исключения:
NullPointerException - если currencyCode равно null
IllegalArgumentException - если currencyCode не является поддерживаемым кодом ISO 4217.

getInstance

public static Currency getInstance(Locale locale)
Возвращает экземпляр Currency для страны заданного локали. Компоненты языка и варианта локали игнорируются. Результат может изменяться со временем, поскольку страны изменяют свои валюты. Например, для оригинальных стран-участниц Европейского валютного союза метод возвращает старые национальные валюты до 31 декабря 2001 года и евро с 1 января 2002 года по местному времени соответствующих стран.

Если указанное locale содержит расширения "cu" и/или "rg" Unicode extensions, экземпляр, возвращаемый этим методом, отражает значения, указанные с помощью этих расширений. Если указаны оба расширения "cu" и "rg", валюта из расширения "cu" имеет приоритет над неявной валютой из расширения "rg".

Для территорий, не имеющих валюты, таких как Антарктида, метод возвращает null.

Параметры:
locale - локали, для которой требуется экземпляр Currency
Возвращает:
экземпляр Currency для страны заданного локали или null
Исключения:
NullPointerException - если locale является null
IllegalArgumentException - если страна заданного locale не является поддерживаемым кодом страны ISO 3166.

getAvailableCurrencies

public static Set<Currency> getAvailableCurrencies()
Получает набор доступных валют. Возвращаемый набор валют содержит все доступные валюты, в том числе валюты, представляющие устаревшие коды ISO 4217. Набор можно изменять, не влияя на доступные валюты во время выполнения.
Возвращает:
набор доступных валют. Если во время выполнения нет доступных валют, возвращаемый набор пустой.
Since:
1.7

getCurrencyCode

public String getCurrencyCode()
Получает код валюты ISO 4217 этой валюты.
Возвращает:
код валюты ISO 4217 этой валюты.

getSymbol

public String getSymbol()
Получает символ этой валюты для локали по умолчанию DISPLAY. Например, для американского доллара символом является "$", если локали по умолчанию является США, в то время как для других локали может быть "US$". Если символ определить нельзя, возвращается код валюты ISO 4217.

Если локали по умолчанию DISPLAY содержит "rg" (региональный переопределения) Unicode extensions, символ, возвращаемый этим методом, отражает значение, указанное с этим расширением.

Это эквивалентно вызову getSymbol(Locale.getDefault(Locale.Category.DISPLAY)).

Возвращает:
символ этой валюты для локали по умолчанию DISPLAY

getSymbol

public String getSymbol(Locale locale)
Получает символ этой валюты для указанного локали. Например, для американского доллара символом является "$", если указанная локали — США, в то время как для других локали может быть "US$". Если символ определить нельзя, возвращается код валюты ISO 4217.

Если указанная locale содержит "rg" (региональное переопределение) Unicode extensions, символ, возвращаемый этим методом, отражает значение, указанное с этим расширением.

Параметры:
locale - локали, для которой нужен символ этой валюты
Возвращает:
символ этой валюты для указанного локали
Исключения:
NullPointerException - если locale равно null

getDefaultFractionDigits

public int getDefaultFractionDigits()
Получает число знаков после запятой по умолчанию для данной валюты. Обратите внимание, что число знаков после запятой совпадает с младшей единицей ISO 4217 для валюты. Например, число знаков после запятой по умолчанию для евро равно 2, а для японской йены — 0. В случае псевдо-валют, таких как МВФ Специальные права заимствования, возвращается -1.
Возвращает:
число знаков после запятой по умолчанию для данной валюты

getNumericCode

public int getNumericCode()
Возвращает числовой код ISO 4217 данной валюты.
Возвращает:
числовой код ISO 4217 данной валюты
Since:
1.7

getNumericCodeAsString

public String getNumericCodeAsString()
Возвращает 3-значный числовой код ISO 4217 данной валюты в виде String. В отличие от getNumericCode(), которая возвращает числовой код в виде int, этот метод всегда возвращает числовой код в виде строки из 3 цифр. Например, числовое значение 32 будет возвращено как "032", а числовое значение 6 будет возвращено как "006".
Возвращает:
3-значный числовой код ISO 4217 данной валюты в виде String
Since:
9

getDisplayName

public String getDisplayName()
Возвращает имя, подходящее для отображения этой валюты для локали по умолчанию DISPLAY. Если подходящее имя для отображения не найдено для локали по умолчанию, возвращается код валюты ISO 4217.

Это эквивалентно вызову getDisplayName(Locale.getDefault(Locale.Category.DISPLAY)).

Возвращает:
имя для отображения данной валюты для локали по умолчанию DISPLAY
Since:
1.7

getDisplayName

public String getDisplayName(Locale locale)
Получает имя, подходящее для отображения этой валюты для указанного локали. Если подходящее имя для отображения не найдено для указанного локали, возвращается код валюты ISO 4217.
Параметры:
locale - локали, для которой нужно имя для отображения валюты
Возвращает:
имя для отображения этой валюты для указанного локали
Исключения:
NullPointerException - если locale равно null
Since:
1.7

toString

public String toString()
Возвращает код валюты ISO 4217 этой валюты.
Overrides:
toString в классе Object
Возвращает:
код валюты ISO 4217 этой валюты

© 1993, 2023, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/Currency.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API