简体   繁体   中英

Retrieve numbers after comma (from double numbers)

Imagine that I have 4,81 (double), how can i get the figures after the comma?

I want to receive 8 as a Integer and 1 as another.

Thanks

Doubles are tricky to work with when you're interested in decimal properties such as the decimal digits of the fractional part.

I suggest you let String.valueOf do the transformation to decimal digits and work with the resulting string.

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);
}

Output:

8
1

You can always make this kind of loop:

double number = 4,81;
while (condition) {
  number *= 10;
  int nextNumber = Math.floor(number) % 10;
}

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM