DecimalFormat - это бетонный подкласс NumberFormat, используемый для форматирования десятичных чисел. Он может поддерживать локализацию различных типов чисел, включая целые числа (123), числа с фиксированными точками (123,4), числа, представленные в научных обозначениях (1,23E4), проценты (12%) и суммы (123 долл. США).
Давайте сначала представим использование DecimalFormat:
импортировать java.text.*; Импорт java.util.*; открытый класс decimalformatdemo {public static void main (string args []) {decimalformat df1 = new decimalformat ("###, ###. 0000"); // Использовать систему системы по умолчанию. Locale.setDefault (locale.us); Decimalformat df2 = new decimalformat ("##, ###. 0000"); // Использовать систему формата США. //----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- // ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------. (Decimalformat) numberFormat.getPerCentInstance (); } catch (classcastException e) {<span style = "Белое пространство: pre"> </span> system.err.println (e); } df5.applypattern ("00,0000%"); System.out.println (df5.format (0,34567)); System.out.println (df5.format (1.34567)); }} (1) Для округления данных:
Decimalformat содержит набор символов, и значение каждого символа объясняется следующим образом:
0 Число
# Число, не считая 0
Полем Заполнитель для десятичного сепаратора
, заполнитель для группового разделителя
; Разграниченный формат.
- отрицательный префикс по умолчанию.
% умножено на 100 и отображается в процентах
? Умножьте на 1000 и отображайте килограмм; заменить на символы валюты; Если написано вдвое больше, замените символами международной валюты. Если он появляется в шаблоне, используйте децимальный сепаратор валюты вместо десятичного сепаратора.
X Префикс или любой другой символ, используемый в суффиксе для обозначения специальных символов в префиксе или суффиксе.
Например:
DecimalFormat DF1 = new DecimalFormat ("### 0,00"); // сохранить два десятичных значения, и если их меньше двух десятичных знаков, ноль будет автоматически дополнен System.out.println (df1.format (124.367)); System.out.println (df1.format (124.3)); Decimalformat df2 = new decimalformat ("### 0. ##"); // сохраняют два десятичных значения, и если их меньше двух десятичных знаков, ноль будет дополнен System.out.println (df2.format (124.6)); System.out.println (df2.format (124)); Decimalformat df3 = new decimalformat ("000,000"); // сохранить три десятичных значения, и восполнить нуты, где существует недостаточное количество цифр System.out.println (df3.format (24)); Decimalformat df = new DecimalFormat ("0,000E0000"); // exponent System.out.println (df.format (1234.56)); Decimalformat nf = (decimalformat) numberformat.getpercentinstance (); //Percentsystem.out.println(nf.format(0.476354)); nf.applypattern ("00,00%"); System.out.println (nf.format (0,476354)); Результаты работы:
124,37 124,30 124,6 124 024,000 1,235E0003 48% 47,64%
(2) Для строк чтения и анализа, содержащих форматированные числа? Поддержка разрешения включена в NumberFormat. Например:
импортировать java.util.locale; импортировать java.text.numberformat; импортировать java.text.parseexception; public class decimalformat5 {public static void main (string args []) {// local format NumberFormat nf1 = numberFormat.getInstance (); Объект obj1 = null; // Основанный на формате parsing try {obj1 = nf1.parse ("1234,56"); } catch (parseException e1) {System.err.println (e1); } System.out.println (obj1); // Немецкий формат NumberFormat nf2 = numberFormat.getInstance (locale.german); Объект obj2 = null; // Основанный на формате } catch (parseException e2) {System.err.println (e2); } System.out.println (obj2); }} Результаты работы:
123456 // Операция в Соединенных Штатах; Считается строка 1234.56 // Операция в Германии; считается десятичным
(3) Для DecimalFormat и NumberFormat:
DecimalFormat - это подкласс NumberFormat, его экземпляр определяется как конкретная область. Следовательно, вы можете указать область, используя numberformat.getinstance, а затем поставить структуру на объект DecimalFormat. В документации упоминается, что этот метод может быть применен в большинстве случаев, но вам необходимо использовать блок Try/Catch для окружения актера в случае, если преобразование не работает должным образом (предположительно, используя странную область в очень ненавязчивых ситуациях).
Выше всего содержание этой статьи. Я надеюсь, что это будет полезно для каждого обучения, и я надеюсь, что все будут поддерживать Wulin.com больше.