我有号码" 159.82
"我需要让它只打印" 82
"
我一直在尝试的是
double total = 159.82;
System.out.println(total - (int) total);
但这让我明白我做错了什么。
。这让我明白了.8199999999999答案 0 :(得分:0)
简单方法:将其转换为String,使用indexOf查找“。”,使用substring打印82。
答案 1 :(得分:0)
这适合您所需要的吗?它输出十进制值,四舍五入到两个位置,作为字符串。
double total = 159.82;
String decimalValue = String.format("%.2f", total).split("\\.")[1];
System.out.println(decimalValue);
(打印“82”)
答案 2 :(得分:0)
使用replaceAll
的另一个解决方案,因此您可以替换所有内容直到点:
double total = 159.82;
System.out.println(String.valueOf(total).replaceAll("^.*\\.", ""));// output = 82
这可以使用负数,例如:
double total = -159.82; // output = 82
另一种解决方案,如果您只想获得2个数字,那么您可以使用:
double total = 159.82; // positive or negative
int result = Math.abs((int) (total * 100) % 100);
System.out.println(result); // output = 82
答案 3 :(得分:0)
由于float/double的工作方式,最简单的解决方案可能是使用字符串。这将返回任何双输入的小数。
<div class = "Container">
<div class = "Div1" > </div>
<div class = "Div_Mid!!" > </div>
<div class = "Div4" > </div>
</div>
答案 4 :(得分:0)
cmp