BigDecimal
BigDecimal a = new BigDecimal("200");
BigDecimal b = new BigDecimal("100");
BigDecimal c = new BigDecimal("200");
System.out.println(a.compareTo(b)==1); //true
System.out.println(b.compareTo(a)==-1); //true
System.out.println(a.compareTo(c)==0); //true
(一) Integer类型
1). 定义
Integer a=new Integer(int value);
Integer a=new Integer(String value);
2). 转换
1、String类型转换为Integer型
String str1 = "123";
Integer i1 = Integer.valueOf(str1);
Integer i2 = Integer.parseInt(str1);
2、上面定义的Integer i2转换为float, double, long
Double d = i2.doubleValue();
Float f = i2.floatValue();
Long l = i2.longValue();
System.out.println(d); //123.0
System.out.println(f); //123.0
System.out.println(l); //123
3、Integer a转换为String(其它的类型转换为String都可通用以下方法)
String str2 = Integer.toString(i1);
String str3 = String.valueOf(i1);
3). 比较(比较的数Integer a)
1、Int num=a.compareTo(Integer b);
若 a == b num = 0
若 a > b num = 1
若 a < b num = -1
2、转换为int型再比较:
a.intValue()与b.intValue比较大小;
(二) BigDecimal
1). 定义
BigDecimal a=new BigDecimal(String; val)
BigDecimal a=new BigDecimal(double val);
2). 转换
i. 定义中就可以将String型和double 型的转换为BigDecimal型
ii. BigDecimal转换为 Int,float, double, long
a.floatValue();
a.doubleValue();
a.longValue();
a.intValue();
iii. BigDecimal a转换为String(其它的类型转换为String都通用以下方法)
toString();
String.valueOf(a);
3). 比较(比较的数BigDecimal a)
Int num=a.compareTo(BigDecimalanotherBigDecimal);
当此BigDecimal在数字上小于、等于或大于 val 时,返回 -1、0 或 1。
BigDecimal取其中最大、最小值、绝对值、相反数:
a.max (b) //比较取最大值
a.min(b) //比较取最小值
a.abs()//取最绝对值
a.negate()//取相反数
4). 计算
加: a.add(b);
减: a.subtract(b);
乘: a.multiply(b);
除: a.divide(b,2);//2为精度取值