我正在使用Java的十进制格式 https://stackoverflow.com/questions/168802/where-can-i-find-a-tutorial-to-get-started-learning-jquery类以科学记数法打印数字。然而,我有一个问题。我需要字符串的长度固定,无论其值如何,而十的幂的符号将其丢弃。目前,我的格式如下:
DecimalFormat format = new DecimalFormat("0.0E0");
这给了我以下组合:1.0E1、1.0E-1、-1.0E1 和 -1.0E-1。
我可以用设置正前缀得到:+1.0E1、+1.0E-1、-1.0E1和-1.0E-1,或者我喜欢的任何东西,但它不会影响功率的符号!
有什么方法可以做到这一点,以便我可以拥有固定长度的字符串吗?谢谢!
编辑:啊,所以没有办法使用 Java 现有的十进制格式API?感谢您的建议!我想我可能必须子类化十进制格式因为我受到现有界面的限制。
这对我有用,
DecimalFormatSymbols SYMBOLS = DecimalFormatSymbols.getInstance(Locale.US);
if (value > 1 || value < -1) {
SYMBOLS.setExponentSeparator("e+");
} else {
SYMBOLS.setExponentSeparator("e");
}
DecimalFormat format = new DecimalFormat(sb.toString(), SYMBOLS);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)