Java 获取整数中的浮点部分

Java 获取整数中的浮点部分,java,android,double,Java,Android,Double,我正在开发一个应用程序,在这个应用程序中,我必须获得整数值形式的浮点部分 例如,如果我的号码是153.12324,那么输出应该是12324。我尝试了这种方法,但有时它会出错 这有什么问题,或者有更好的方法吗 d中有一个双值 double d =any_double_value; String[] splitter = String.valueOf(d).split("\\."); splitter[0].length(); // Before Decimal Coun

我正在开发一个应用程序,在这个应用程序中,我必须获得整数值形式的浮点部分

例如,如果我的号码是
153.12324
,那么输出应该是
12324
。我尝试了这种方法,但有时它会出错

这有什么问题,或者有更好的方法吗

d中有一个双值

    double d =any_double_value;
    String[] splitter = String.valueOf(d).split("\\.");
    splitter[0].length();   // Before Decimal Count
    int count = splitter[1].length();
    int integerpart = (int) calcResult;
    double floatpart = calcResult - integerpart;
    while (count!=0)
    {
        floatpart=floatpart*10;
        count--;
    }

    int floatpartinInt=(int)floatpart;

只有在某些情况下(它给出的数字少了1,比如答案是124,它给出的数字是123)和在答案是长双的情况下(比如3.333333333(10/3)

在你的情况下使用此代码,享受男人的乐趣

double val=1.9;
    String[] arr=String.valueOf(val).split("\\.");
    int[] intArr=new int[2];
    intArr[0]=Integer.parseInt(arr[0]); // 1
    intArr[1]=Integer.parseInt(arr[1]); // 9

您也可以不使用
拆分
。通过以下方式

double value = 3.25;
double fractionalPart = value % 1;
double integralPart = value - fractionalPart;

这可能会帮助您

您也可以这样做:

lvalue = (long) value;
fPart = value - lvalue;

你是说“得到小数部分”吗?一个很好的错误:1.00023和1.000229将得到23和229。浮点是一种粗略的近似值,没有精确的字符串位数。