从java中的点后面的数字中提取值

时间:2017-02-08 09:32:45

标签: java int

int number = 24.24;

int afterDot = (int) (number*100)%100;
afterDot = 24

如果

,这种逻辑是错误的
int number1 = 24.4 

如何从24.4获得4? 无论数字是多少,但想要在点后提取值。 实际上,公式必须适用于两种类型的价值。

1 个答案:

答案 0 :(得分:1)

如果您将double转换为字符串,则问题会变得更加容易:

double number = 24.4;
String numberAsString = String.valueOf(number);
String decimalPart = numberAsString.split("\\.")[1];
System.out.println(decimalPart);
int number1 = Integer.valueOf(decimalPart); // NOTE: This conversion is lossy.
System.out.println(number1);

请注意,通过将decimalPart字符串(例如“001”)转换为整数(1),您可能会丢失一些信息。

使用24.4,输出:

4
4

使用24.001,输出:

001
1

使用3d,输出:

0
0