早教吧 育儿知识 作业答案 考试题库 百科 知识分享

java两个数相除后保留两位小数(四舍五入),并且结果大于三位数要有千位分隔符,不是整数时,小数点前三这两个数可能为Int类型可能为double类型,结果要是string类型的

题目详情
java两个数相除后保留两位小数 (四舍五入),并且结果大于三位数要有千位分隔符,不是整数时,小数点前三
这两个数 可能为Int类型 可能为double类型,结果要是string类型的
▼优质解答
答案和解析
public static void main(String[] args) {
System.out.println(test(2, 0.7));\x09//参数为int和double 结果=2.86
System.out.println(test(11111111111113L, 4.5));\x09// 参数为long和double 结果=2,469,135,802,469.56
System.out.println(test("234567", "3.14159"));\x09// 参数为字符串 结果=74,665.06
}
private static String test(Object a, Object b) {\x09// 参数类型任意(只要是number),返回总是字符串
// 下面这一行里的2,表示保留小数点后多少位(四舍五入),如果两位就是2,如果小数点前三,就改成3.
BigDecimal result = new BigDecimal(String.valueOf(a)).divide(new BigDecimal(String.valueOf(b)), 2, BigDecimal.ROUND_HALF_UP);
return new DecimalFormat("###,###.###").format(Double.valueOf(result.toString())).toString();
}
看了 java两个数相除后保留两位...的网友还看了以下: