>想象一下我有 4,81(双精度),我怎样才能得到逗号后面的数字?
我想接收 8 作为整数,1 作为另一个整数。
谢谢
当您对十进制属性(如小数部分的十进制数字)感兴趣时,双精度很难使用。
我建议你让String.valueOf
转换为十进制数字并使用生成的字符串。
double d = 4.81;
String s = String.valueOf(d);
for (int i = s.indexOf(".") + 1; i < s.length(); i++) {
int digit = Character.getNumericValue(s.charAt(i));
System.out.println(digit);
}
输出:
8
1
你总是可以做这样的循环:
double number = 4,81;
while (condition) {
number *= 10;
int nextNumber = Math.floor(number) % 10;
}