1、接收前端传参类型:BigDecimal、Integer、Long
2、将BigDecimal类型转化为String类型(其他类型也要转化为String类型进行截取)
BigDecimal b = new BigDecimal("1.222222");
String s = String.valueOf(b);
3、获取字符串“.”所在的下标数
int i = s.indexOf(".");
4、截取"."后面所有的字符的长度
String ba = s.substring(i+1, s.length());
5、判端小数点后面的有几个字符
if (ba.length() > 4){
System.out.println("只允许小数点后四位");
}
总结:
BigDecimal b = new BigDecimal("1.222222");
System.out.println("原来的数据:"+b);
//转成String类型
String s = String.valueOf(b);
//优化:如果是整数没必要走以下的逻辑
boolean isContain = s.contains(".");
if (isContain){
int i = s.indexOf(".");
String ba = s.substring(i+1, s.length());
System.out.println(ba);
if (ba.length() > 4){
System.out.println("只允许小数点后四位");
}
}
运行结果: