除法
public static double div(double v1, double v2, int scale) { if (scale < 0) { throw new IllegalArgumentException( "The scale must be a positive integer or zero"); } BigDecimal b1 = new BigDecimal(Double.toString(v1)); BigDecimal b2 = new BigDecimal(Double.toString(v2)); return b1.divide(b2, scale, BigDecimal.ROUND_HALF_UP).doubleValue(); }
String转float并且保留两位小数
float allje =0; for (int c = 0;c<alllist.size();c++){ allje = allje +(Float.parseFloat(alllist.get(c).price)*alllist.get(c).buynum); }
DecimalFormat fnum = new DecimalFormat("##0.00"); String dd = fnum.format(allje);
/**
*Math.sqrt()//计算平方根
*Math.cbrt()//计算立方根
*Math.pow(a, b)//计算a的b次方
*Math.max( , );//计算最大值
*Math.min( , );//计算最小值
*/
System.out.println(Math.sqrt(16)); //4.0
System.out.println(Math.cbrt(8)); //2.0
System.out.println(Math.pow(3,2)); //9.0
System.out.println(Math.max(2.3,4.5));//4.5
System.out.println(Math.min(2.3,4.5));//2.3
/**
* abs求绝对值
*/
System.out.println(Math.abs(-10.4)); //10.4
System.out.println(Math.abs(10.1)); //10.1
/**
* ceil天花板的意思,就是返回大的值。小数不为0,整数 加 1
*/
System.out.println(Math.ceil(0.00)); //0.0
System.out.println(Math.ceil(10.001)); //11
/**
* floor地板的意思,就是返回小的值 。小数不为0,整数 减 1
*/
System.out.println(Math.floor(-0.7)); //-1.0
System.out.println(Math.floor(0.0)); //0.0
System.out.println(Math.random()); //小于1大于0的double类型的数
0.5041101701502628
四舍五入
System.out.println(Math.round(10.1)); //10
System.out.println(Math.round(10.7)); //11