两位数相除,求百分比,保留两位小数,四舍五入;
写一个方法
/**
* @param a
* @param b
* @return
*/
public int bs(int a ,int b){
return (int)((new BigDecimal((float) a / b).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue())*100);
}
}
参数是两个int类型,调用BigDecimal类,方法中的2是保留两位小数,BigDecimal.ROUND_HALF_UP是四舍五入的意思,doubleValue得到结果,在这里,我们让得到的两位小数乘以100并进行类型转换,这样会变成一个int的两位数的整数;
public class Test4 {
public static void main(String[] args) {
int v = (int) ((new BigDecimal((float) 40 / 60).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue())*100)
String str = v+"%"; 用字符串做拼接,得到想要的%形式
System.out.println(str);
}
测试结果如下