gpt4 book ai didi

Java 数字格式如何将 +/- 符号更改为自定义文本

转载 作者:行者123 更新时间:2023-12-03 22:03:00 25 4
gpt4 key购买 nike

我想使用数字格式在数字为正数或负数时添加不同的文本

例如:

-3.5 => (down) 3.5

+3.5 => (up) 3.5

我在 DecimalFormatSymbols 中找到了一些东西,但只能更改减号并且只能更改单个字符

还有其他简单的数字格式器使用方法吗?

DecimalFormatSymbols unusualSymbols = new DecimalFormatSymbols(currentLocale);
unusualSymbols.setDecimalSeparator('|');
unusualSymbols.setGroupingSeparator('^');
unusualSymbols.setMinusSign();
String strange = "#,##0.###";
DecimalFormat weirdFormatter =
new DecimalFormat(strange, unusualSymbols);
weirdFormatter.setGroupingSize(4);

String bizarre = weirdFormatter.format(12345.678);
System.out.println(bizarre);

最佳答案

您可以在 DecimalFormat 的格式字符串中执行此操作:

(up) #,##0.###;(down) #,##0.###

链接的文档包含格式字符串的完整语法定义,开始于:

Pattern:
PositivePattern
PositivePattern ; NegativePattern

这表示由分号分隔的可选第二格式字符串 (;) 将用于负值。

进一步阅读:

PositivePattern:
Prefix_opt Number Suffix_opt
NegativePattern:
Prefix_opt Number Suffix_opt
Prefix:
any Unicode characters except \uFFFE, \uFFFF, and special characters
Suffix:
any Unicode characters except \uFFFE, \uFFFF, and special characters

每个模式(正数和负数)都包含一个数字格式字符串 (Number),带有可选的前缀和后缀字符串。这些附加部分可以是您喜欢的任何字符串(包括(up)(down))。

关于Java 数字格式如何将 +/- 符号更改为自定义文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57527872/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com