比较String类型的数字大小

只有相同位数的字符串可以使用compareTo方法进行比较,否则需要将其转换为long/int/BigDecimal类型进行比较

String mm1="100";
String mm2="2";
//输出结果:-1 (X)
System.out.println(mm1.compareTo(mm2));

因为double类型的数据进行相加,总是出现一些偏差;

比较String类型的数字大小_第1张图片

由此可以看出 double类型的数据进行操作,因为计算机在计算时,会先将数据转换为二进制,计算之后在转换回来。于是就会出现少许的偏差。

因此需要使用BigDecimal进行数据操作,并且BigDecimal对象时使用String,数据就可以精准了!

你可能感兴趣的:(工作中遇到的问题,java,string)