Класс Currency
- java.lang.Object
-
- java.util.Currency
- Все реализованные интерфейсы:
- Serializable
public final class Currency extends Object implements Serializable
Представляет валюту. Валюты идентифицируются по их кодам ISO 4217. Посетите веб-сайт ISO для получения дополнительной информации.
Класс разработан таким образом, что для любой заданной валюты существует не более одного Currency экземпляра. Поэтому публичный конструктор отсутствует. Вы получаете экземпляр Currency с помощью методов getInstance.
Пользователи могут заменить данные о валюте Java-среды с помощью системной переменной 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
заменит данные о валюте для Японии.
#Sample currency properties with cutover date
JP=JPZ,999,0,2014-01-01T00:00:00
заменит данные о валюте для Японии, если класс Currency загружен после 1 января 2014 года 00:00:00 по Гринвичу.
В случае столкновения с синтаксически некорректными записями запись игнорируется, и обработка оставшихся записей в файле продолжается. В случаях существования дублирующихся записей кода страны поведение информации о валюте для этой Currency является неопределенным, и обработка оставшихся записей в файле продолжается.
- C момента:
- 1.4
- См. также:
- Форматированный вид
Методы
| Модификатор и тип | Метод и описание |
|---|---|
static Set<Currency> |
getAvailableCurrencies() Возвращает набор доступных валют. |
String |
getCurrencyCode() Возвращает код валюты ISO 4217 для этой валюты. |
int |
getDefaultFractionDigits() Возвращает стандартное количество знаков после запятой, используемых для этой валюты. |
String |
getDisplayName() Возвращает имя, подходящее для отображения этой валюты для локальной области по умолчанию |
String |
getDisplayName(Locale locale) Возвращает имя, подходящее для отображения этой валюты для заданной локальной области. |
static Currency |
getInstance(Locale locale) Возвращает |
static Currency |
getInstance(String currencyCode) Возвращает |
int |
getNumericCode() Возвращает числовой код ISO 4217 для этой валюты. |
String |
getSymbol() Возвращает символ этой валюты для локальной области по умолчанию |
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 года по местному времени соответствующих стран.
Метод возвращает null для территорий, у которых нет валюты, например, Антарктида.
- Параметры:
-
locale- локальная область, для страны которой требуетсяCurrencyэкземпляр - Возвращает:
- экземпляр
Currencyдля страны заданной локальной области илиnull - Исключения:
-
NullPointerException- еслиlocaleили ее код страныnull -
IllegalArgumentException- если страна заданнойlocaleне является поддерживаемым кодом страны ISO 3166.
getAvailableCurrencies
public static Set<Currency> getAvailableCurrencies()
Возвращает набор доступных валют. Возвращаемый набор валют содержит все доступные валюты, включая валюты, представляющие устаревшие коды ISO 4217. Набор может быть изменен без влияния на доступные валюты в среде выполнения.
- Возвращает:
- набор доступных валют. Если в среде выполнения нет доступных валют, возвращаемый набор пустой.
- C момента:
- 1.7
getCurrencyCode
public String getCurrencyCode()
Возвращает код валюты ISO 4217 для этой валюты.
- Возвращает:
- код валюты ISO 4217 для этой валюты.
getSymbol
public String getSymbol()
Возвращает символ этой валюты для локальной области по умолчанию DISPLAY. Например, для американского доллара символ — "$" при локальной области США, в то время как для других локальных областей это может быть "US$". Если символ определить нельзя, возвращается код валюты ISO 4217.
Эквивалентно вызову getSymbol(Locale.getDefault(Locale.Category.DISPLAY)).
- Возвращает:
- символ этой валюты для локальной области по умолчанию
DISPLAY
getSymbol
public String getSymbol(Locale locale)
Возвращает символ этой валюты для заданной локальной области. Например, для американского доллара символ — "$" при заданной локальной области США, в то время как для других локальных областей это может быть "US$". Если символ определить нельзя, возвращается код валюты ISO 4217.
- Параметры:
-
locale- локальная область, для которой требуется имя отображения этой валюты - Возвращает:
- символ этой валюты для заданной локальной области
- Исключения:
-
NullPointerException- еслиlocaleравно null
getDefaultFractionDigits
public int getDefaultFractionDigits()
Возвращает стандартное количество знаков после запятой, используемых для этой валюты. Например, стандартное количество знаков после запятой для евро — 2, а для японской иены — 0. В случае псевдо-валют, таких как МВФ СДР, возвращается -1.
- Возвращает:
- стандартное количество знаков после запятой, используемых для этой валюты
getNumericCode
public int getNumericCode()
Возвращает числовой код ISO 4217 для этой валюты.
- Возвращает:
- числовой код ISO 4217 для этой валюты
- C момента:
- 1.7
getDisplayName
public String getDisplayName()
Возвращает имя, подходящее для отображения этой валюты для локальной области по умолчанию DISPLAY. Если подходящее имя отображения не найдено для локальной области по умолчанию, возвращается код валюты ISO 4217.
Эквивалентно вызову getDisplayName(Locale.getDefault(Locale.Category.DISPLAY)).
- Возвращает:
- имя отображения этой валюты для локальной области по умолчанию
DISPLAY - C момента:
- 1.7
getDisplayName
public String getDisplayName(Locale locale)
Возвращает имя, подходящее для отображения этой валюты для заданной локальной области. Если подходящее имя отображения не найдено для заданной локальной области, возвращается код валюты ISO 4217.
- Параметры:
-
locale- локальная область, для которой требуется имя отображения этой валюты - Возвращает:
- имя отображения этой валюты для заданной локальной области
- Исключения:
-
NullPointerException- еслиlocaleравно null - C момента:
- 1.7
toString
public String toString()
Возвращает код валюты ISO 4217 для этой валюты.
© 1993, 2020, 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.