Spec-Zone.ru › OpenJDK 27

Класс DecimalFormat

java.lang.Object
java.text.Format
java.text.NumberFormat
java.text.DecimalFormat
Все реализованные интерфейсы:
Serializable, Cloneable
public class DecimalFormat extends NumberFormat
DecimalFormat — конкретный подкласс NumberFormat, который форматирует десятичные числа с учетом локали. Он обладает множеством возможностей, позволяющих выполнять разбор и форматирование чисел в любой локали, включая поддержку западных, арабских и индийских цифр. Он также поддерживает различные виды чисел, включая целые числа (123), числа с фиксированной точкой (123.4), экспоненциальную запись (1.23E4), проценты (12%) и денежные суммы ($123).

Получение DecimalFormat

Чтобы получить стандартный десятичный формат для конкретной локали, включая локаль по умолчанию, рекомендуется вызвать один из NumberFormat factory methods, например NumberFormat.getInstance(). Эти фабричные методы не всегда возвращают DecimalFormat — это зависит от установленной реализации поставщика служб локали. Поэтому для использования метода экземпляра, определенного в DecimalFormat, перед преобразованием возвращенного фабричным методом NumberFormat в DecimalFormat следует проверить его тип. Если установленная реализация службы с учетом локали не поддерживает указанную Locale, будет выполнен поиск по цепочке родительских локалей и использована поддерживаемая Locale.

Если фабричные методы не подходят, используйте один из конструкторов, например DecimalFormat(String pattern). Дополнительные сведения о параметре pattern см. в разделе Pattern.

Использование DecimalFormat

Ниже приведен пример форматирования и разбора:
NumberFormat nFmt = NumberFormat.getCurrencyInstance(Locale.US);
if (nFmt instanceof DecimalFormat dFmt) {
    // pattern match to DecimalFormat to use setPositiveSuffix(String)
    dFmt.setPositiveSuffix(" dollars");
    dFmt.format(100000); // returns "$100,000.00 dollars"
    dFmt.parse("$100,000.00 dollars"); // returns 100000
}

Форматирование и разбор

Округление

При форматировании DecimalFormat может изменять режим округления с помощью setRoundingMode(RoundingMode). По умолчанию используется RoundingMode.HALF_EVEN.

Цифры

При форматировании DecimalFormat использует в качестве цифр десять последовательных символов, начиная с локализованной цифры ноль, определенной в объекте DecimalFormatSymbols.

При разборе распознаются как эти цифры, так и все десятичные цифры Unicode, определенные в Character.digit.

Ограничения на количество целых и дробных цифр

Ограничения на количество целых и дробных цифр задаются с помощью pattern или одного из соответствующих методов установки DecimalFormat, например setMinimumFractionDigits(int). Эти ограничения не влияют на разбор.

Специальные значения

  • Не число (NaN) форматируется как строка, обычно представленная как "NaN". Эта строка определяется методом DecimalFormatSymbols.getNaN(). Это единственное значение, к которому не добавляются префиксы и суффиксы.

  • Бесконечность форматируется как строка, обычно представленная как "∞" (U+221E), с добавлением положительных или отрицательных префиксов и суффиксов. Эта строка определяется методом DecimalFormatSymbols.getInfinity().

  • Отрицательный ноль ("-0") при разборе преобразуется в

    • BigDecimal(0), если isParseBigDecimal() имеет значение true
    • Long(0), если isParseBigDecimal() имеет значение false, а isParseIntegerOnly() — true
    • Double(-0.0), если и isParseBigDecimal(), и isParseIntegerOnly() имеют значение false

Синхронизация

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

Шаблон DecimalFormat

DecimalFormat состоит из шаблона и набора символов. Шаблон можно задать напрямую с помощью applyPattern() или косвенно с помощью различных методов API. Символы хранятся в объекте DecimalFormatSymbols. При использовании фабричных методов NumberFormat шаблон и символы создаются установленной реализацией службы с учетом локали.

Шаблоны DecimalFormat имеют следующий синтаксис:

Pattern:
        PositivePattern
        PositivePattern ; NegativePattern
PositivePattern:
        Prefixopt Number Suffixopt
NegativePattern:
        Prefixopt Number Suffixopt
Prefix:
        Any characters except the special pattern characters
Suffix:
        Any characters except the special pattern characters
Number:
        Integer Exponentopt
        Integer . Fraction Exponentopt
Integer:
        MinimumInteger
        #
        # Integer
        # , Integer
MinimumInteger:
        0
        0 MinimumInteger
        0 , MinimumInteger
Fraction:
        MinimumFractionopt OptionalFractionopt
MinimumFraction:
        0 MinimumFractionopt
OptionalFraction:
        # OptionalFractionopt
Exponent:
        E MinimumExponent
MinimumExponent:
        0 MinimumExponentopt

Специальные символы шаблона

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

Символы в столбце Symbol используются в нелокализованных шаблонах. Соответствующие символы в столбце Localized Symbol используются в локализованных шаблонах, при этом символы из Symbol утрачивают свое синтаксическое значение. Исключение составляют знак валюты (U+00A4) и кавычка (U+0027), которые не локализуются.

При вызове applyPattern(String) следует использовать нелокализованные шаблоны. При вызове applyLocalizedPattern(String) следует использовать локализованные шаблоны.

Таблица символов, расположения, локализованных вариантов и значений.
Символ Локализованный символ Расположение Значение
0 DecimalFormatSymbols.getZeroDigit() Число Цифра
# DecimalFormatSymbols.getDigit() Число Цифра; ноль не отображается
. DecimalFormatSymbols.getDecimalSeparator() Число Десятичный или денежный разделитель целой и дробной частей
- (U+002D) DecimalFormatSymbols.getMinusSign() Число Знак минус
, DecimalFormatSymbols.getGroupingSeparator() Число Разделитель групп разрядов или денежный разделитель групп разрядов
E DecimalFormatSymbols.getExponentSeparator() Число Разделяет мантиссу и показатель степени в экспоненциальной записи. Регистр символа имеет значение. В префиксе или суффиксе заключать в кавычки не требуется.
; DecimalFormatSymbols.getPatternSeparator() Граница подшаблонов Разделяет положительный и отрицательный подшаблоны
% DecimalFormatSymbols.getPercent() Префикс или суффикс Умножить на 100 и отобразить в виде процента
‰ (U+2030) DecimalFormatSymbols.getPerMill() Префикс или суффикс Умножить на 1000 и отобразить в виде промилле
¤ (U+00A4) н/д (не локализуется) Префикс или суффикс Знак валюты, заменяемый символом валюты. Если он указан дважды, заменяется международным символом валюты. Если он присутствует в шаблоне, вместо разделителей целой и дробной частей и групп разрядов используются денежные разделители.
' (U+0027) н/д (не локализуется) Префикс или суффикс Используется для заключения специальных символов в префиксе или суффиксе в кавычки; например, "'#'#" форматирует 123 как "#123". Чтобы указать саму кавычку, используйте две кавычки подряд: "# o''clock".

Определение максимального количества цифр

Для любого заданного шаблона DecimalFormat, не использующего экспоненциальную запись, максимальное количество целых цифр не определяется по шаблону, а устанавливается равным Integer.MAX_VALUE. Если же шаблон использует экспоненциальную запись, максимальное количество целых цифр определяется по шаблону. Это подробно описано в разделе Scientific Notation. Для ручной настройки максимального количества целых цифр можно использовать setMaximumIntegerDigits(int).

Отрицательные подшаблоны

Шаблон DecimalFormat содержит положительный и отрицательный подшаблоны, например "#,##0.00;(#,##0.00)". Каждый подшаблон состоит из префикса, числовой части и суффикса. Отрицательный подшаблон необязателен; если он отсутствует, в качестве отрицательного используется положительный подшаблон с добавленным в начало знаком минус '-' (U+002D HYPHEN-MINUS). То есть шаблон "0.00" эквивалентен шаблону "0.00;-0.00". Если отрицательный подшаблон задан явно, он определяет только отрицательные префикс и суффикс; количество цифр, минимальное количество цифр и другие характеристики совпадают с положительным шаблоном. Это означает, что "#,##0.0#;(#)" дает точно такое же поведение, как "#,##0.0#;(#,##0.0#)". В режиме lenient parsing включено нестрогое сопоставление шаблона знака минус в соответствии со спецификацией нестрогого сопоставления LDML.

Префиксы, суффиксы и различные символы, используемые для бесконечности, цифр, разделителей групп разрядов, десятичных разделителей и т. д., можно задавать произвольными значениями, и при форматировании они будут отображаться должным образом. Однако необходимо следить за тем, чтобы символы и строки не конфликтовали, иначе разбор будет ненадежным. Например, чтобы DecimalFormat.parse() мог различать положительные и отрицательные значения, положительные и отрицательные префиксы или суффиксы должны отличаться. (Если они совпадают, DecimalFormat будет вести себя так, как если бы отрицательный подшаблон не был задан.) Другой пример: десятичный разделитель и разделитель групп разрядов должны быть разными символами, иначе разбор будет невозможен.

Разделитель групп разрядов

Разделитель групп разрядов обычно используется для разделения тысяч, но в некоторых локалях он отделяет десятки тысяч. Размер группы — это постоянное количество цифр между разделителями групп, например 3 для 100,000,000 или 4 для 1,0000,0000. Если в шаблоне указано несколько разделителей групп, используется интервал между последним разделителем и концом целой части. Например, "#,##,###,####" == "######,####" == "##,####,####".

Экспоненциальная запись

Числа в экспоненциальной записи представляются как произведение мантиссы и степени десяти; например, число 1234 можно представить как 1.234 x 10^3. Мантисса часто находится в диапазоне 1.0 ≤ x < 10.0, но это необязательно. DecimalFormat можно настроить для форматирования и разбора чисел в экспоненциальной записи только с помощью шаблона; в настоящее время фабричного метода для создания формата экспоненциальной записи нет. В шаблоне символ показателя степени, за которым непосредственно следует один или несколько символов цифр, указывает на экспоненциальную запись. Пример: "0.###E0" форматирует число 1234 как "1.234E3".

  • Количество символов цифр после символа показателя степени задает минимальное количество цифр в показателе степени. Максимальное количество не ограничено. Отрицательные показатели степени форматируются с использованием локализованного знака минус, а не префикса и суффикса из шаблона. Это позволяет использовать такие шаблоны, как "0.###E0 m/s".
  • Максимальное количество целых цифр равно сумме символов '0' и '#' перед десятичным разделителем. Минимальное количество целых цифр равно сумме символов '0' перед десятичным разделителем. Для максимального и минимального количества дробных цифр действуют те же правила, но они применяются к цифрам после десятичного разделителя и перед показателем степени. Например, в следующем шаблоне: "#00.0####E0" минимальное количество целых цифр равно 2 ("00"), а максимальное — 3 ("#00"). Минимальное количество дробных цифр равно 1 ("0"), а максимальное — 5 ("0####").
  • Минимальное и максимальное количество целых цифр интерпретируются совместно:
    • Если максимальное количество целых цифр превышает минимальное и больше 1, показатель степени становится кратным максимальному количеству целых цифр, а минимальное количество целых цифр интерпретируется как 1. Чаще всего это используется для создания инженерной нотации, в которой показатель степени кратен трем, например "##0.#####E0". При использовании этого шаблона число 12345 форматируется как "12.345E3", а 123456 — как "123.456E3".
    • В противном случае минимальное количество целых цифр достигается путем корректировки показателя степени. Пример: 0.00123, отформатированное с помощью "00.###E0", дает "12.3E-4".
  • Для заданного числа количество значащих цифр в мантиссе можно вычислить следующим образом:
    Mantissa Digits:
            min(max(Minimum Pattern Digits, Original Number Digits), Maximum Pattern Digits)
    Minimum pattern Digits:
            Minimum Integer Digits + Minimum Fraction Digits
    Maximum pattern Digits:
            Maximum Integer Digits + Maximum Fraction Digits
    Original Number Digits:
            The amount of significant digits in the number to be formatted
    
    Это означает, что обычно мантисса содержит до суммарного максимального количества целых и дробных цифр, если исходное число содержит достаточно значащих цифр. Однако если минимальное количество цифр в шаблоне превышает количество значащих цифр исходного числа, мантисса будет содержать число значащих цифр, равное суммарному минимальному количеству целых и дробных цифр. Количество значащих цифр не влияет на разбор.

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

    Это поведение можно увидеть в следующем примере:

        DecimalFormat df = new DecimalFormat("#000.000##E0");
        df.format(12); // returns "12.0000E0"
        df.format(123456789) // returns "1.23456789E8"
    
  • Шаблоны экспоненциальной записи не могут содержать разделители групп разрядов.
Требования к реализации:
При форматировании Number, отличного от BigInteger и BigDecimal, 309 используется в качестве верхнего предела для количества целых цифр, а 340 — в качестве верхнего предела для количества дробных цифр. Это происходит даже в том случае, если один из методов получения DecimalFormat, например getMinimumFractionDigits(), возвращает численно большее значение.
С версии:
1.1
Внешние спецификации
  • Язык разметки данных локалей Unicode (LDML)
См. также:
  • Учебник Java
  • NumberFormat
  • DecimalFormatSymbols
  • ParsePosition
  • Locale
  • Сериализованная форма

Краткое описание вложенных классов

Вложенные классы/интерфейсы, объявленные в классе NumberFormat

NumberFormat.Field, NumberFormat.Style
Модификатор и тип Класс Описание
static class  NumberFormat.Field
Определяет константы, используемые в качестве ключей атрибутов в AttributedCharacterIterator, возвращаемом методами NumberFormat.formatToCharacterIterator, и в качестве идентификаторов полей в FieldPosition.
static enum  NumberFormat.Style
Стиль форматирования чисел.

Краткое описание полей

Поля, объявленные в классе NumberFormat

FRACTION_FIELD, INTEGER_FIELD
Модификатор и тип Поле Описание
static final int FRACTION_FIELD
Константа поля, используемая для создания объекта FieldPosition.
static final int INTEGER_FIELD
Константа поля, используемая для создания объекта FieldPosition.

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

Конструктор Описание
DecimalFormat()
Создает DecimalFormat, используя шаблон и символы по умолчанию для текущей локали FORMAT по умолчанию.
DecimalFormat(String pattern)
Создает DecimalFormat, используя заданный шаблон и символы для текущей локали FORMAT по умолчанию.
DecimalFormat(String pattern, DecimalFormatSymbols symbols)
Создает DecimalFormat, используя заданные шаблон и символы.

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

Модификатор и тип Метод Описание
void applyLocalizedPattern(String pattern)
Применяет заданный шаблон к этому объекту Format.
void applyPattern(String pattern)
Применяет заданный шаблон к этому объекту Format.
Object clone()
Стандартное переопределение; семантика не изменена.
boolean equals(Object obj)
Сравнивает указанный объект с этим DecimalFormat на равенство.
StringBuffer format(double number, StringBuffer result, FieldPosition fieldPosition)
Форматирует значение double, преобразуя его в строку.
StringBuffer format(long number, StringBuffer result, FieldPosition fieldPosition)
Форматирует значение long, преобразуя его в строку.
final StringBuffer format(Object number, StringBuffer toAppendTo, FieldPosition pos)
Форматирует число и добавляет полученный текст в заданный буфер строк.
AttributedCharacterIterator formatToCharacterIterator(Object obj)
Форматирует объект, создавая AttributedCharacterIterator.
Currency getCurrency()
Возвращает валюту, используемую этим десятичным форматом при форматировании денежных значений.
DecimalFormatSymbols getDecimalFormatSymbols()
Возвращает копию символов десятичного формата, которые обычно не изменяются программистом или пользователем.
int getGroupingSize()
Возвращает размер группировки.
int getMaximumFractionDigits()
Возвращает максимальное количество цифр, допустимое в дробной части числа при форматировании.
int getMaximumIntegerDigits()
Возвращает максимальное количество цифр, допустимое в целой части числа при форматировании.
int getMinimumFractionDigits()
Возвращает минимальное количество цифр, допустимое в дробной части числа при форматировании.
int getMinimumIntegerDigits()
Возвращает минимальное количество цифр, допустимое в целой части числа при форматировании.
int getMultiplier()
Возвращает множитель, используемый для процентов, промилле и подобных форматов.
String getNegativePrefix()
Возвращает отрицательный префикс.
String getNegativeSuffix()
Возвращает отрицательный суффикс.
String getPositivePrefix()
Возвращает положительный префикс.
String getPositiveSuffix()
Возвращает положительный суффикс.
RoundingMode getRoundingMode()
Возвращает режим округления RoundingMode, используемый в этом DecimalFormat.
int hashCode()
Возвращает хеш-код этого DecimalFormat.
boolean isDecimalSeparatorAlwaysShown()
Позволяет получить сведения о поведении десятичного разделителя для целых чисел.
boolean isParseBigDecimal()
Возвращает, возвращает ли метод parse(java.lang.String, java.text.ParsePosition) значение BigDecimal.
boolean isStrict()
Возвращает true, если этот формат строго разбирает числа; в противном случае — false.
Number parse(String text, ParsePosition pos)
Разбирает текст от начала заданной строки, чтобы получить Number.
void setCurrency(Currency currency)
Задает валюту, используемую этим числовым форматом при форматировании денежных значений.
void setDecimalFormatSymbols(DecimalFormatSymbols newSymbols)
Задает символы десятичного формата, которые обычно не изменяются программистом или пользователем.
void setDecimalSeparatorAlwaysShown(boolean newValue)
Позволяет задать поведение десятичного разделителя для целых чисел.
void setGroupingSize(int newValue)
Задает размер группировки.
void setMaximumFractionDigits(int newValue)
Задает максимальное количество цифр, допустимое в дробной части числа при форматировании.
void setMaximumIntegerDigits(int newValue)
Задает максимальное количество цифр, допустимое в целой части числа при форматировании.
void setMinimumFractionDigits(int newValue)
Задает минимальное количество цифр, допустимое в дробной части числа при форматировании.
void setMinimumIntegerDigits(int newValue)
Задает минимальное количество цифр, допустимое в целой части числа при форматировании.
void setMultiplier(int newValue)
Задает множитель, используемый для процентов, промилле и подобных форматов.
void setNegativePrefix(String newValue)
Задает отрицательный префикс.
void setNegativeSuffix(String newValue)
Задает отрицательный суффикс.
void setParseBigDecimal(boolean newValue)
Задает, должно ли значение, возвращаемое методом parse(java.lang.String, java.text.ParsePosition), быть BigDecimal.
void setPositivePrefix(String newValue)
Задает положительный префикс.
void setPositiveSuffix(String newValue)
Задает положительный суффикс.
void setRoundingMode(RoundingMode roundingMode)
Задает режим округления RoundingMode, используемый в этом DecimalFormat.
void setStrict(boolean strict)
Изменяет степень строгости при разборе.
String toLocalizedPattern()
Формирует локализованную строку шаблона, отражающую текущее состояние этого объекта Format.
String toPattern()
Формирует строку шаблона, отражающую текущее состояние этого объекта Format.
String toString()
Возвращает строку, идентифицирующую этот DecimalFormat, для отладки.

Методы, объявленные в классе NumberFormat

format, format, getAvailableLocales, getCompactNumberInstance, getCompactNumberInstance, getCurrencyInstance, getCurrencyInstance, getInstance, getInstance, getIntegerInstance, getIntegerInstance, getNumberInstance, getNumberInstance, getPercentInstance, getPercentInstance, isGroupingUsed, isParseIntegerOnly, parse, parseObject, setGroupingUsed, setParseIntegerOnly
Модификатор и тип Метод Описание
final String format(double number)
Специализация метода format.
final String format(long number)
Специализация метода format.
static Locale[] getAvailableLocales()
Возвращает массив всех локалей, для которых методы get*Instance этого класса могут возвращать локализованные экземпляры.
static NumberFormat getCompactNumberInstance()
Возвращает компактный числовой формат для локали FORMAT по умолчанию со стилем форматирования "SHORT".
static NumberFormat getCompactNumberInstance(Locale locale, NumberFormat.Style formatStyle)
Возвращает компактный числовой формат для указанной locale и formatStyle.
static final NumberFormat getCurrencyInstance()
Возвращает денежный формат для текущей локали FORMAT по умолчанию.
static NumberFormat getCurrencyInstance(Locale inLocale)
Возвращает денежный формат для указанной локали.
static final NumberFormat getInstance()
Возвращает числовой формат общего назначения для текущей локали FORMAT по умолчанию.
static NumberFormat getInstance(Locale inLocale)
Возвращает числовой формат общего назначения для указанной локали.
static final NumberFormat getIntegerInstance()
Возвращает целочисленный числовой формат для текущей локали FORMAT по умолчанию.
static NumberFormat getIntegerInstance(Locale inLocale)
Возвращает целочисленный числовой формат для указанной локали.
static final NumberFormat getNumberInstance()
Возвращает числовой формат общего назначения для текущей локали FORMAT по умолчанию.
static NumberFormat getNumberInstance(Locale inLocale)
Возвращает числовой формат общего назначения для указанной локали.
static final NumberFormat getPercentInstance()
Возвращает процентный формат для текущей локали FORMAT по умолчанию.
static NumberFormat getPercentInstance(Locale inLocale)
Возвращает процентный формат для указанной локали.
boolean isGroupingUsed()
Возвращает true, если в этом формате используется группировка.
boolean isParseIntegerOnly()
Возвращает true, если этот формат разбирает числа только как целые.
Number parse(String source)
Разбирает текст от начала заданной строки, чтобы получить Number.
final Object parseObject(String source, ParsePosition pos)
Разбирает текст из заданной строки, чтобы получить объект.
void setGroupingUsed(boolean newValue)
Задает, будет ли в этом формате использоваться группировка.
void setParseIntegerOnly(boolean value)
Задает, следует ли разбирать числа только как целые.

Методы, объявленные в классе Format

format, parseObject
Модификатор и тип Метод Описание
final String format(Object obj)
Форматирует объект, преобразуя его в строку.
Object parseObject(String source)
Разбирает текст от начала заданной строки, чтобы получить объект.

Методы, объявленные в классе Object

finalize, getClass, notify, notifyAll, wait, wait, wait
Модификатор и тип Метод Описание
protected void finalize()
Устарело, будет удалено: этот элемент API подлежит удалению в будущей версии.
Финализация объявлена устаревшей и подлежит удалению в одном из будущих выпусков.
final Class<?> getClass()
Возвращает класс времени выполнения этого Object.
final void notify()
Пробуждает один поток, ожидающий на мониторе этого объекта.
final void notifyAll()
Пробуждает все потоки, ожидающие на мониторе этого объекта.
final void wait()
Заставляет текущий поток ожидать пробуждения, обычно вследствие вызова notify или interrupt.
final void wait(long timeoutMillis)
Заставляет текущий поток ожидать пробуждения, обычно вследствие вызова notify или interrupt, либо до истечения заданного промежутка реального времени.
final void wait(long timeoutMillis, int nanos)
Заставляет текущий поток ожидать пробуждения, обычно вследствие вызова notify или interrupt, либо до истечения заданного промежутка реального времени.

Подробное описание конструкторов

DecimalFormat

public DecimalFormat()
Создает DecimalFormat, используя шаблон и символы по умолчанию для локали FORMAT. Это удобный способ получить DecimalFormat, если интернационализация не является главной задачей.
Примечание к API:
Чтобы получить стандартные форматы для заданной локали, используйте фабричные методы NumberFormat, например NumberFormat.getNumberInstance(Locale). Эти фабричные методы возвращают наиболее подходящий подкласс NumberFormat для заданной локали.
См. также:
  • NumberFormat.getInstance(Locale)
  • NumberFormat.getNumberInstance(Locale)
  • NumberFormat.getCurrencyInstance(Locale)
  • NumberFormat.getPercentInstance(Locale)

DecimalFormat

public DecimalFormat(String pattern)
Создает DecimalFormat, используя заданный шаблон и символы по умолчанию для локали FORMAT. Это удобный способ получить DecimalFormat, если интернационализация не является главной задачей. Максимальное количество целых цифр обычно не определяется шаблоном. Подробнее см. примечание в разделе Patterns.
Примечание к API:
Чтобы получить стандартные форматы для заданной локали, используйте фабричные методы NumberFormat, например NumberFormat.getNumberInstance(Locale). Эти фабричные методы возвращают наиболее подходящий подкласс NumberFormat для заданной локали.
Параметры:
pattern — строка шаблона без привязки к локали.
Исключения:
NullPointerException — если pattern имеет значение null
IllegalArgumentException — если заданный шаблон недопустим.
См. также:
  • NumberFormat.getInstance(Locale)
  • NumberFormat.getNumberInstance(Locale)
  • NumberFormat.getCurrencyInstance(Locale)
  • NumberFormat.getPercentInstance(Locale)

DecimalFormat

public DecimalFormat(String pattern, DecimalFormatSymbols symbols)
Создает DecimalFormat, используя заданный шаблон и символы. Используйте этот конструктор, если необходимо полностью настроить поведение формата. Максимальное количество целых цифр обычно не определяется шаблоном. Подробнее см. примечание в разделе Patterns.
Примечание к API:
Чтобы получить стандартные форматы для заданной локали, используйте фабричные методы NumberFormat, например NumberFormat.getInstance(Locale) или NumberFormat.getCurrencyInstance(Locale). Если требуются лишь небольшие изменения стандартного формата, можно изменить формат, возвращаемый фабричным методом NumberFormat.
Параметры:
pattern — строка шаблона без привязки к локали
symbols — набор используемых символов
Исключения:
NullPointerException — если любой из заданных аргументов имеет значение null
IllegalArgumentException — если заданный шаблон недопустим
См. также:
  • NumberFormat.getInstance(Locale)
  • NumberFormat.getNumberInstance(Locale)
  • NumberFormat.getCurrencyInstance(Locale)
  • NumberFormat.getPercentInstance(Locale)
  • DecimalFormatSymbols

Подробное описание методов

format

public final StringBuffer format(Object number, StringBuffer toAppendTo, FieldPosition pos)
Форматирует число и добавляет полученный текст в заданный буфер строк. Число может быть экземпляром любого подкласса Number.
Переопределяет:
format в классе NumberFormat
Требования к реализации:
Эта реализация использует максимально допустимую точность.
Параметры:
number — число для форматирования
toAppendTo — StringBuffer, в который добавляется отформатированный текст
pos — отслеживает положение поля в возвращаемой строке. Например, при форматировании числа 1234567.89 в локали Locale.US, если заданный fieldPosition — это NumberFormat.INTEGER_FIELD, начальный и конечный индексы fieldPosition будут установлены в 0 и 9 соответственно для выходной строки 1,234,567.89.
Возвращает:
значение, переданное в качестве toAppendTo
Исключения:
IllegalArgumentException — если number имеет значение null или не является экземпляром Number.
NullPointerException — если toAppendTo или pos имеет значение null
ArithmeticException — если требуется округление, а режим округления установлен в RoundingMode.UNNECESSARY
См. также:
  • FieldPosition

format

public StringBuffer format(double number, StringBuffer result, FieldPosition fieldPosition)
Форматирует значение типа double, создавая строку.
Определено в:
format в классе NumberFormat
Параметры:
number — значение типа double для форматирования
result — буфер, в который добавляется текст
fieldPosition — отслеживает положение поля в возвращаемой строке. Например, при форматировании числа 1234567.89 в локали Locale.US, если заданный fieldPosition — это NumberFormat.INTEGER_FIELD, начальный и конечный индексы fieldPosition будут установлены в 0 и 9 соответственно для выходной строки 1,234,567.89.
Возвращает:
строку отформатированного числа
Исключения:
NullPointerException — если result или fieldPosition имеет значение null
ArithmeticException — если требуется округление, а режим округления установлен в RoundingMode.UNNECESSARY
См. также:
  • FieldPosition

format

public StringBuffer format(long number, StringBuffer result, FieldPosition fieldPosition)
Форматирует значение типа long, создавая строку.
Определено в:
format в классе NumberFormat
Параметры:
number — значение типа long для форматирования
result — буфер, в который добавляется текст
fieldPosition — отслеживает положение поля в возвращаемой строке. Например, при форматировании числа 123456789 в локали Locale.US, если заданный fieldPosition — это NumberFormat.INTEGER_FIELD, начальный и конечный индексы fieldPosition будут установлены в 0 и 11 соответственно для выходной строки 123,456,789.
Возвращает:
строку отформатированного числа
Исключения:
NullPointerException — если result или fieldPosition имеет значение null
ArithmeticException — если требуется округление, а режим округления установлен в RoundingMode.UNNECESSARY
См. также:
  • FieldPosition

formatToCharacterIterator

public AttributedCharacterIterator formatToCharacterIterator(Object obj)
Форматирует объект, создавая AttributedCharacterIterator. Возвращенный AttributedCharacterIterator можно использовать для построения результирующей строки, а также для получения сведений о ней.

Ключ каждого атрибута AttributedCharacterIterator будет иметь тип NumberFormat.Field, а значение атрибута будет совпадать с его ключом.

Переопределяет:
formatToCharacterIterator в классе Format
Параметры:
obj — объект для форматирования
Возвращает:
AttributedCharacterIterator, описывающий отформатированное значение.
Исключения:
NullPointerException — если obj имеет значение null.
IllegalArgumentException — если Format не может отформатировать заданный объект.
ArithmeticException — если требуется округление, а режим округления установлен в RoundingMode.UNNECESSARY
Начиная с версии:
1.4

parse

public Number parse(String text, ParsePosition pos)
Разбирает текст от начала заданной строки, чтобы получить Number.

Этот метод пытается разобрать текст, начиная с индекса, заданного параметром ParsePosition. Если разбор выполнен успешно, индекс ParsePosition обновляется до индекса после последнего использованного символа (при разборе необязательно используются все символы до конца строки), а разобранное число возвращается. Обновленный ParsePosition можно использовать как начальную позицию для следующего вызова этого метода. Если произошла ошибка, индекс ParsePosition не изменяется, индекс ошибки ParsePosition устанавливается в позицию символа, на котором произошла ошибка, а null возвращается.

Этот метод возвращает Long, если это возможно (например, значение находится в диапазоне [Long.MIN_VALUE, Long.MAX_VALUE] и не содержит дробной части), в противном случае возвращает Double.

Разбор может выполняться в строгом или нестрогом режиме; по умолчанию используется нестрогий режим.

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

В строгом режиме разбор завершается неудачей, если в text,

  • не найден префикс. Например, префикс формата валюты Locale.US: "$"
  • не найден суффикс. Например, суффикс процентного формата Locale.US: "%"
  • NumberFormat.isGroupingUsed() возвращает true, а getGroupingSize() не соблюдается
  • NumberFormat.isGroupingUsed() возвращает false, а символ группировки обнаружен
  • NumberFormat.isGroupingUsed() возвращает true, и символ группировки встречается после десятичного разделителя
  • обнаружены другие символы, не являющиеся ожидаемыми символами или цифрами в числовой части

В нестрогом режиме знак минуса в negative subpatterns сопоставляется с допустимыми вариантами символа минуса без строгого соответствия.

Возвращаемый подкласс зависит от значения isParseBigDecimal(), а также от разбираемой строки.

  • Если isParseBigDecimal() имеет значение false (по умолчанию), большинство целых значений возвращается как объекты Long независимо от их записи: "17" и "17.000" разбираются как Long(17). Значения, не помещающиеся в Long, возвращаются как Double. К ним относятся значения с дробной частью, бесконечные значения, NaN и значение -0.0. DecimalFormat не определяет, возвращать ли Double или Long, исходя из наличия десятичного разделителя в исходной строке. Это не позволило бы точно разбирать целые числа, превышающие разрядность мантиссы типа double, например "-9,223,372,036,854,775,808.00".

    Вызывающий код может использовать методы Number, например doubleValue, longValue и т. д., чтобы получить нужный тип.

  • Если isParseBigDecimal() имеет значение true, значения возвращаются как объекты BigDecimal. Это значения, создаваемые методом BigDecimal(String) для соответствующих строк в формате, не зависящем от локали. Особые значения отрицательной и положительной бесконечности и NaN возвращаются как экземпляры Double, содержащие значения соответствующих констант Double.

DecimalFormat разбирает все символы Unicode, представляющие десятичные цифры согласно определению Character.digit(). Кроме того, DecimalFormat распознает в качестве цифр десять последовательных символов, начиная с локализованного нуля, определенного в объекте DecimalFormatSymbols.

Определено в:
parse в классе NumberFormat
Параметры:
text — строка для разбора
pos — объект ParsePosition с информацией об индексе и индексе ошибки, описанной выше.
Возвращает:
разобранное значение или null, если разбор не удался
Исключения:
NullPointerException — если text или pos имеет значение null.
См. также:
  • NumberFormat.isStrict()

getDecimalFormatSymbols

public DecimalFormatSymbols getDecimalFormatSymbols()
Возвращает копию символов десятичного формата, которые обычно не изменяются программистом или пользователем.
Возвращает:
копию нужного объекта DecimalFormatSymbols
См. также:
  • DecimalFormatSymbols

setDecimalFormatSymbols

public void setDecimalFormatSymbols(DecimalFormatSymbols newSymbols)
Задает символы десятичного формата, которые обычно не изменяются программистом или пользователем.
Параметры:
newSymbols — требуемый объект DecimalFormatSymbols
См. также:
  • DecimalFormatSymbols

getPositivePrefix

public String getPositivePrefix()
Возвращает префикс положительного числа.

Примеры: +123, $123, sFr123

Возвращает:
префикс положительного числа

setPositivePrefix

public void setPositivePrefix(String newValue)
Задает префикс положительного числа.

Примеры: +123, $123, sFr123

Параметры:
newValue — новый префикс положительного числа. Не может быть null.
Исключения:
NullPointerException — если newValue имеет значение null

getNegativePrefix

public String getNegativePrefix()
Возвращает префикс отрицательного числа.

Примеры: -123, ($123) (с отрицательным суффиксом), sFr-123

Возвращает:
префикс отрицательного числа

setNegativePrefix

public void setNegativePrefix(String newValue)
Задает префикс отрицательного числа.

Примеры: -123, ($123) (с отрицательным суффиксом), sFr-123

Параметры:
newValue — новый префикс отрицательного числа. Не может быть null.
Исключения:
NullPointerException — если newValue имеет значение null

getPositiveSuffix

public String getPositiveSuffix()
Возвращает суффикс положительного числа.

Пример: 123%

Возвращает:
суффикс положительного числа

setPositiveSuffix

public void setPositiveSuffix(String newValue)
Задает суффикс положительного числа.

Пример: 123%

Параметры:
newValue — новый суффикс положительного числа. Не может быть null.
Исключения:
NullPointerException — если newValue имеет значение null

getNegativeSuffix

public String getNegativeSuffix()
Возвращает суффикс отрицательного числа.

Примеры: -123%, ($123) (с положительными суффиксами)

Возвращает:
суффикс отрицательного числа

setNegativeSuffix

public void setNegativeSuffix(String newValue)
Задает суффикс отрицательного числа.

Примеры: 123%

Параметры:
newValue — новый суффикс отрицательного числа. Не может быть null.
Исключения:
NullPointerException — если newValue имеет значение null

getMultiplier

public int getMultiplier()
Возвращает множитель, используемый для процентов, промилле и подобных форматов.
Возвращает:
множитель
См. также:
  • setMultiplier(int)

setMultiplier

public void setMultiplier(int newValue)
Задает множитель, используемый для процентов, промилле и подобных форматов. Для процентного формата задайте множитель 100 и суффиксы с символом '%' (для арабского языка используйте арабский знак процента). Для формата промилле задайте множитель 1000 и суффиксы с символом 'U+2030'.

Пример: при множителе 100 значение 1.23 форматируется как "123", а строка "123" разбирается как 1.23. Если isParseIntegerOnly() возвращает true, строка "123" разбирается как 1.

Параметры:
newValue — новый множитель
См. также:
  • getMultiplier()

getGroupingSize

public int getGroupingSize()
Возвращает размер группировки. Размер группировки — это количество цифр между разделителями групп в целой части числа. Например, в числе "123,456.78" размер группировки равен 3. Нулевой размер группировки означает, что группировка не используется; результат форматирования будет таким же, как при вызове setGroupingUsed(false).
Возвращает:
размер группировки
См. также:
  • setGroupingSize(int)
  • NumberFormat.isGroupingUsed()
  • DecimalFormatSymbols.getGroupingSeparator()

setGroupingSize

public void setGroupingSize(int newValue)
Задает размер группировки. Размер группировки — это количество цифр между разделителями групп в целой части числа. Например, в числе "123,456.78" размер группировки равен 3. Нулевой размер группировки означает, что группировка не используется; результат форматирования будет таким же, как при вызове setGroupingUsed(false).

Переданное значение преобразуется в byte, что может привести к потере информации. Для отрицательных значений или значений, превышающих Byte.MAX_VALUE, будет выброшено исключение IllegalArgumentException.

Параметры:
newValue — новый размер группировки
Исключения:
IllegalArgumentException — если newValue является отрицательным или превышает Byte.MAX_VALUE
См. также:
  • getGroupingSize()
  • NumberFormat.setGroupingUsed(boolean)
  • DecimalFormatSymbols.setGroupingSeparator(char)

isDecimalSeparatorAlwaysShown

public boolean isDecimalSeparatorAlwaysShown()
Позволяет узнать, как ведет себя десятичный разделитель при форматировании целых чисел. (Для десятичных чисел десятичный разделитель отображается всегда.)

Пример: десятичный разделитель ВКЛ.: 12345 → 12345.; ВЫКЛ.: 12345 → 12345

Возвращает:
true, если десятичный разделитель отображается всегда; иначе — false

setDecimalSeparatorAlwaysShown

public void setDecimalSeparatorAlwaysShown(boolean newValue)
Позволяет задать поведение десятичного разделителя при форматировании целых чисел. (Для десятичных чисел десятичный разделитель отображается всегда.)

Пример: десятичный разделитель ВКЛ.: 12345 → 12345.; ВЫКЛ.: 12345 → 12345

Параметры:
newValue — true, если десятичный разделитель отображается всегда; иначе — false

isStrict

public boolean isStrict()
Возвращает true, если этот формат разбирает числа в строгом режиме; в противном случае — false.
Переопределяет:
isStrict в классе NumberFormat
Возвращает:
true, если этот формат разбирает числа в строгом режиме; в противном случае — false
Начиная с версии:
23
См. также:
  • setStrict(boolean)
  • parse(String, ParsePosition)

setStrict

public void setStrict(boolean strict)
Изменяет строгость разбора. Разбор может выполняться в строгом или нестрогом режиме; по умолчанию используется нестрогий режим.
Переопределяет:
setStrict в классе NumberFormat
Параметры:
strict — true, если разбор должен выполняться в строгом режиме; иначе — false
Начиная с версии:
23
См. также:
  • isStrict()
  • parse(String, ParsePosition)

isParseBigDecimal

public boolean isParseBigDecimal()
Возвращает, возвращает ли метод parse(java.lang.String, java.text.ParsePosition) значение BigDecimal. Значение по умолчанию — false.
Возвращает:
true, если метод разбора возвращает BigDecimal; иначе — false
Начиная с версии:
1.5
См. также:
  • setParseBigDecimal(boolean)

setParseBigDecimal

public void setParseBigDecimal(boolean newValue)
Задает, будет ли метод parse(java.lang.String, java.text.ParsePosition) возвращать значение BigDecimal.
Параметры:
newValue — true, если метод разбора возвращает BigDecimal; иначе — false
Начиная с версии:
1.5
См. также:
  • isParseBigDecimal()

clone

public Object clone()
Стандартное переопределение; семантика не изменена.
Переопределяет:
clone в классе NumberFormat
Возвращает:
копию этого экземпляра.
См. также:
  • Cloneable

equals

public boolean equals(Object obj)
Сравнивает указанный объект с этим DecimalFormat на равенство. Возвращает true, если объект также является DecimalFormat и оба формата форматируют любое значение одинаково.
Переопределяет:
equals в классе NumberFormat
Требования к реализации:
Этот метод проверяет равенство, определяя идентичность класса на основе getClass(), а не instanceof. Поэтому в методах equals подклассов ни один экземпляр этого класса не должен считаться равным экземпляру подкласса.
Параметры:
obj — объект для сравнения на равенство
Возвращает:
true, если указанный объект равен этому DecimalFormat
См. также:
  • Object.equals(Object)

hashCode

public int hashCode()
Возвращает хеш-код этого DecimalFormat.
Переопределяет:
hashCode в классе NumberFormat
Требования к реализации:
Этот метод вычисляет значение хеш-кода, используя значения, возвращаемые методами getPositivePrefix() и NumberFormat.hashCode().
Возвращает:
хеш-код этого DecimalFormat
См. также:
  • Object.hashCode()
  • NumberFormat.hashCode()

toString

public String toString()
Возвращает строку, идентифицирующую этот DecimalFormat, для отладки.
Переопределяет:
toString в классе Object
Возвращает:
строку, идентифицирующую этот DecimalFormat, для отладки

toPattern

public String toPattern()
Создает строку шаблона, отражающую текущее состояние этого объекта Format.
Возвращает:
строку шаблона
См. также:
  • applyPattern(String)

toLocalizedPattern

public String toLocalizedPattern()
Создаёт строку локализованного шаблона, представляющую текущее состояние этого объекта Format.
Возвращает:
строку локализованного шаблона
См. также:
  • applyPattern(String)

applyPattern

public void applyPattern(String pattern)
Применяет заданный шаблон к этому объекту Format. Шаблон — это краткая спецификация различных свойств форматирования. Эти свойства также можно изменять по отдельности с помощью соответствующих методов установки.

Максимальное количество цифр целой части обычно не определяется шаблоном. Подробнее см. примечание в разделе Patterns. Для отрицательных чисел используйте второй шаблон, отделённый точкой с запятой

Пример "#,#00.0#" → 1,234.56

Это означает минимум 2 цифры в целой части, 1 цифру в дробной части и максимум 2 цифры в дробной части.

Пример: "#,#00.0#;(#,#00.0#)" для отрицательных чисел в скобках.

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

Параметры:
pattern — новый шаблон
Исключения:
NullPointerException — если pattern равно null
IllegalArgumentException — если заданный шаблон недопустим.

applyLocalizedPattern

public void applyLocalizedPattern(String pattern)
Применяет заданный шаблон к этому объекту Format. Предполагается, что шаблон задан в локализованной нотации. Шаблон — это краткая спецификация различных свойств форматирования. Эти свойства также можно изменять по отдельности с помощью соответствующих методов установки.

Максимальное количество цифр целой части обычно не определяется шаблоном. Подробнее см. примечание в разделе Patterns. Для отрицательных чисел используйте второй шаблон, отделённый точкой с запятой

Пример "#,#00.0#" → 1,234.56

Это означает минимум 2 цифры в целой части, 1 цифру в дробной части и максимум 2 цифры в дробной части.

Пример: "#,#00.0#;(#,#00.0#)" для отрицательных чисел в скобках.

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

Параметры:
pattern — новый шаблон
Исключения:
NullPointerException — если pattern равно null
IllegalArgumentException — если заданный шаблон недопустим.

setMaximumIntegerDigits

public void setMaximumIntegerDigits(int newValue)
Задаёт максимальное количество цифр, допустимое в целой части числа при форматировании. maximumIntegerDigits должно быть ≥ minimumIntegerDigits. Если новое значение maximumIntegerDigits меньше текущего значения minimumIntegerDigits, то minimumIntegerDigits также будет установлено в новое значение. Отрицательные входные значения заменяются на 0.
Переопределяет:
setMaximumIntegerDigits в классе NumberFormat
Параметры:
newValue — максимальное количество отображаемых цифр целой части.
См. также:
  • getMaximumIntegerDigits()
  • Ограничения числа цифр целой и дробной частей

setMinimumIntegerDigits

public void setMinimumIntegerDigits(int newValue)
Задаёт минимальное количество цифр, допустимое в целой части числа при форматировании. minimumIntegerDigits должно быть ≤ maximumIntegerDigits. Если новое значение minimumIntegerDigits превышает текущее значение maximumIntegerDigits, то maximumIntegerDigits также будет установлено в новое значение. Отрицательные входные значения заменяются на 0.
Переопределяет:
setMinimumIntegerDigits в классе NumberFormat
Параметры:
newValue — минимальное количество отображаемых цифр целой части.
См. также:
  • getMinimumIntegerDigits()
  • Ограничения числа цифр целой и дробной частей

setMaximumFractionDigits

public void setMaximumFractionDigits(int newValue)
Задаёт максимальное количество цифр, допустимое в дробной части числа при форматировании. maximumFractionDigits должно быть ≥ minimumFractionDigits. Если новое значение maximumFractionDigits меньше текущего значения minimumFractionDigits, то minimumFractionDigits также будет установлено в новое значение. Отрицательные входные значения заменяются на 0.
Переопределяет:
setMaximumFractionDigits в классе NumberFormat
Параметры:
newValue — максимальное количество отображаемых цифр дробной части.
См. также:
  • getMaximumFractionDigits()
  • Ограничения числа цифр целой и дробной частей

setMinimumFractionDigits

public void setMinimumFractionDigits(int newValue)
Задаёт минимальное количество цифр, допустимое в дробной части числа при форматировании. minimumFractionDigits должно быть ≤ maximumFractionDigits. Если новое значение minimumFractionDigits превышает текущее значение maximumFractionDigits, то maximumFractionDigits также будет установлено в новое значение. Отрицательные входные значения заменяются на 0.
Переопределяет:
setMinimumFractionDigits в классе NumberFormat
Параметры:
newValue — минимальное количество отображаемых цифр дробной части.
См. также:
  • getMinimumFractionDigits()
  • Ограничения числа цифр целой и дробной частей

getMaximumIntegerDigits

public int getMaximumIntegerDigits()
Возвращает максимальное количество цифр, допустимое в целой части числа при форматировании.

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

Переопределяет:
getMaximumIntegerDigits в классе NumberFormat
Возвращает:
максимальное количество цифр
См. также:
  • setMaximumIntegerDigits(int)
  • Раздел шаблонов
  • Ограничения числа цифр целой и дробной частей

getMinimumIntegerDigits

public int getMinimumIntegerDigits()
Возвращает минимальное количество цифр, допустимое в целой части числа при форматировании.
Переопределяет:
getMinimumIntegerDigits в классе NumberFormat
Возвращает:
минимальное количество цифр
См. также:
  • setMinimumIntegerDigits(int)
  • Ограничения числа цифр целой и дробной частей

getMaximumFractionDigits

public int getMaximumFractionDigits()
Возвращает максимальное количество цифр, допустимое в дробной части числа при форматировании.
Переопределяет:
getMaximumFractionDigits в классе NumberFormat
Возвращает:
максимальное количество цифр.
См. также:
  • setMaximumFractionDigits(int)
  • Ограничения числа цифр целой и дробной частей

getMinimumFractionDigits

public int getMinimumFractionDigits()
Возвращает минимальное количество цифр, допустимое в дробной части числа при форматировании.
Переопределяет:
getMinimumFractionDigits в классе NumberFormat
Возвращает:
минимальное количество цифр
См. также:
  • setMinimumFractionDigits(int)
  • Ограничения числа цифр целой и дробной частей

getCurrency

public Currency getCurrency()
Возвращает валюту, используемую этим десятичным форматом при форматировании денежных значений. Валюта получается вызовом DecimalFormatSymbols.getCurrency для символов этого числового формата.
Переопределяет:
getCurrency в классе NumberFormat
Возвращает:
валюту, используемую этим десятичным форматом, или null
Начиная с версии:
1.4

setCurrency

public void setCurrency(Currency currency)
Задаёт валюту, используемую этим числовым форматом при форматировании денежных значений. Это не изменяет минимальное или максимальное количество цифр дробной части, используемое числовым форматом. Валюта задаётся вызовом DecimalFormatSymbols.setCurrency для символов этого числового формата.
Переопределяет:
setCurrency в классе NumberFormat
Параметры:
currency — новая валюта для этого десятичного формата
Исключения:
NullPointerException — если currency равно null
Начиная с версии:
1.4

getRoundingMode

public RoundingMode getRoundingMode()
Возвращает RoundingMode, используемый в этом DecimalFormat.
Переопределяет:
getRoundingMode в классе NumberFormat
Возвращает:
RoundingMode, используемый этим DecimalFormat.
Начиная с версии:
1.6
См. также:
  • setRoundingMode(RoundingMode)

setRoundingMode

public void setRoundingMode(RoundingMode roundingMode)
Задаёт RoundingMode, используемый в этом DecimalFormat.
Переопределяет:
setRoundingMode в классе NumberFormat
Параметры:
roundingMode — RoundingMode, который будет использоваться
Исключения:
NullPointerException — если roundingMode равно null.
Начиная с версии:
1.6
См. также:
  • getRoundingMode()

Сообщить об ошибке или предложить улучшение
Дополнительные справочные материалы по API и документацию для разработчиков см. в разделе Документация Java SE, содержащем более подробные описания для разработчиков, обзоры концепций, определения терминов, обходные решения и примеры работающего кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или её аффилированных лиц в США и других странах.
Авторское право © 1993, 2026, Oracle и/или её аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 1993, 2025, 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.

Spec-Zone.ru

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