java⼩数点进⼀_Java⼩数点处理
四种⽅法
1. BigDecimal类
BigDecimal bigDecimal =new BigDecimal(参数);
参数为String输出为本来值;为Double输出结果不可预料
BigDecimal.setScale()⽅法⽤于格式化⼩数点
setScale(1)表⽰保留⼀位⼩数,默认⽤四舍五⼊⽅式
setScale(1,BigDecimal.ROUND_DOWN)直接删除多余的⼩数位,如2.35会变成2.3
setScale(1,BigDecimal.ROUND_UP)进位处理,2.35变成2.4
setScale(1,BigDecimal.ROUND_HALF_UP)四舍五⼊,2.35变成2.4bigdecimal格式化两位小数
setScaler(1,BigDecimal.ROUND_HALF_DOWN)四舍五⼊,2.35变成2.3,如果是5则向下舍
2. DecimalFormat类的format(待约数字)⽅法
DecimalFormat deciamlFormat =new DecimalFormat(pattern);
pattern的语法特点
0 :如果该位存在数字则输出该数字,如果不存在则输出0;
# :如果该位存在数字则输出该数字,不存在不做任何输出;
. :⼩数分隔符;
- :负号;
,:分组分隔符;
E :科学计数法中分隔位数和指数;
% :放置在数字的前缀或后缀,将数字乘以100,以百分数输出;
\u2030:放置在数字的前缀或后缀,将数字乘以1000,以千分数输出;
\u00A4: 放置在数字的前缀或后缀,作为货币记号;
' : 本符号为单引号,当上述特殊符号出现在数字中时,应为特殊符号添加单引号,系统会将该特殊符号当做普通符号处理;
3. NumberFormat类(包含DecimalFormat类)的format(待约数字)⽅法和setMaximumFractionDigits(保留位数)⽅法
4. string类的format⽅法