我的学习之java编程

Java小数点处理

2017-10-24  本文已影响0人  埃菲尔铁塔_35a7

四种方法

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.4

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方法

上一篇 下一篇

猜你喜欢

热点阅读