4,9 или 4,90 как double
оба представлены в одном и том же приближении.Между ними нет никакой разницы.
Конечно, вы можете делать то, что вы хотите, используя строковую обработку входных данных.Тем не менее, вы можете найти BigDecimal
лучший тип данных для того, что вы делаете.Он различает 4.9 и 4.90 и может точно представлять каждый из них.
import java.math.BigDecimal;
public class Test {
public static void main(String[] args) {
System.out.println(new BigDecimal(4.9));
System.out.println(new BigDecimal(4.90));
BigDecimal x1 = new BigDecimal("4.9");
System.out.println(x1);
System.out.println(x1.scale());
BigDecimal x2 = new BigDecimal("4.90");
System.out.println(x2);
System.out.println(x2.scale());
}
}
Вывод:
4.9000000000000003552713678800500929355621337890625
4.9000000000000003552713678800500929355621337890625
4.9
1
4.90
2