我有一个值为7
的字符串。我需要将此值转换为大十进制等效7.000000
。我尝试了 BigDecimal 的BigDecimal(String val)
和BigDecimal(BigInteger val, MathContext mc)
构造函数,但这些都不起作用,它们都返回7
。我怎样才能获得7.000000
?
答案 0 :(得分:2)
您可以使用DecimalFormat
格式化输出。但是,无法在BigDecimal
对象中存储不必要的精度。
public static void main(String[] args) {
BigDecimal seven = new BigDecimal(7);
BigDecimal sevenWithDecimals = new BigDecimal("7.12");
DecimalFormat decF = new DecimalFormat("#.000000");
System.out.println(decF.format(seven.doubleValue()));
System.out.println(decF.format(sevenWithDecimals.doubleValue()));
}
输出
7.000000
7.120000
答案 1 :(得分:1)
我认为您正在谈论如何将其转换为String
。
BigDecimal
的构造函数将生成一个代表您给出的值的BigDecimal
,而代表数字7的BigDecimal
与{{1}之间没有区别代表数字7.00000,不仅仅是数字7和数字7.00000之间的差异。
当你打印出来时,它需要转换为BigDecimal
,听起来好像在那时你想要指定小数位数。为此,您需要使用String
类:
DecimalFormat
答案 2 :(得分:0)
这应该有效:
<a href="#" class="tooltips" data-toggle="popover" data-trigger="hover" data-placement="right" data-content="My text that I want to display on mobile" data-original-title="" title="">
<img src="image">
</a>