事件
需要用两个Integer型的值,计算出百分比,然后四舍五入转成Integer型,下面是最终的实现方法。
public class PercentCalculateUtils {
private static final Integer HUNDRED = 100;
public Integer getPercent(Integer num, Integer sum) {
Integer percent = sum == 0 ? 0 :
new BigDecimal(num) //创建BigDecimal对象
.divide(new BigDecimal(sum), 2, RoundingMode.DOWN) //保留2位小数
.multiply(new BigDecimal(HUNDRED)) //小数乘以100
.intValue(); //转成Integer
return percent;
}
// 将乘法的结果四舍五入
public static Integer testMultiply(){
int money = new BigDecimal(
new BigDecimal(2510).multiply(new BigDecimal(0.24)).doubleValue())
.setScale(0, BigDecimal.ROUND_HALF_UP).intValue();
return money;
}
}
测试
@Test
public void testPer(){
System.out.println("percent : "+getPercent(1,3));
}
输出:
percent : 33
经过各个数据的组合,验证此方法是没有问题的。
当然网上也有一些其他的办法,但都比较麻烦,其中有个枚举类:RoundingMode,里面有不同的枚举值,可以多尝试看看。
与君共勉!!!
最后
以上就是花痴大船最近收集整理的关于java计算整型相除后小数再四舍五入得到整型数值的全部内容,更多相关java计算整型相除后小数再四舍五入得到整型数值内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复