DecimalFormat数字格式化
DecimalFormat可以按照需要格式化数字,下面简单介绍一下几种使用。其中自己也踏踏实实踩了坑,谨此记录。 保留位数设置
public class DecimalUtils { //保留2位,不足补0
private static final DecimalFormat df_fill_zero = new DecimalFormat("00.00");
//保留2位,不足保留原位数
private static final DecimalFormat df_fill_null = new DecimalFormat("##.##"); public static void main (String args[]) {
System.out.println(df_fill_zero.format(1.2)); //01.20 不足2位补0
System.out.println(df_fill_null.format(1.2)); //1.2 不足2位保留原数位 System.out.println(df_fill_zero.format(1.224)); //01.22 超出2位截断(舍入模式后面再说)
System.out.println(df_fill_null.format(1.224)); //1.22 超出2位截断(舍入模式后面再说) System.out.println(df_fill_zero.format(123.22)); //123.22
System.out.println(df_fill_null.format(123.22)); //123.22
}
}
运行结果:
01.20
1.2
01.22
1.22
123.22
123.22
舍入模式
默认舍入模式
public class FormatDefault {
//保留3位,不足保留原位数
private static final DecimalFormat df_t = new DecimalFormat("#.###"); public static void main (String args[]) {
//默认舍入模式(RoundingMode.HALF_EVEN)
System.out.println(df_t.format(1234.2224)); //1234.222
System.out.println(df_t.format(1234.2226)); //1234.223 System.out.println(df_t.format(1234.2225)); //1234.223 最后一位偶数,舍入
System.out.println(df_t.format(1234.2235)); //1234.223 最后一位奇数,舍去
}
}
四舍五入模式
public class FormatHalfUp { /***
* 最多保存3位小数,如果number少于3位则保留原小数位数,如果多于3位则四舍五入保留3位小数
*/
public static String formatHalfUp(double number) {
DecimalFormat df = new DecimalFormat("#.###");
df.setRoundingMode(RoundingMode.HALF_UP);
return df.format(BigDecimal.valueOf(number)); //防止精度丢失,数字类型用BigDecimal
} public static void main (String args[]) {
//四舍五入舍入模式(RoundingMode.HALF_UP)
System.out.println(formatHalfUp(1234.2224)); //1234.222
System.out.println(formatHalfUp(1234.2226)); //1234.223 System.out.println(formatHalfUp(1234.2225)); //1234.223
System.out.println(formatHalfUp(1234.2235)); //1234.224
}
}
DecimalFormat数字格式化的更多相关文章
- DecimalFormat数字格式化用法“0”和“#”的区别
1. 以“0”补位时: 如果数字少了,就会补“0”,小数和整数都会补: 如果数字多了,就切掉,但只切小数的末尾,整数不能切: 同时被切掉的小数位会进行四舍五入处理. 2. 以“#”补位时: 如果数字少 ...
- Java学习笔记 06 数字格式化及数学运算
一.数字格式化 DecimalFormat类 >>DecimalFormat是NumberFormat的子类,用于格式化十进制数,可以将一些数字格式化为整数.浮点数.百分数等.通过使用该类 ...
- Java SE基础部分——常用类库之NumberFormat(数字格式化)
数字格式化常用方法:DecimalFormat和NuberFormat. //2016060524 数字格式化学习 //数字格式化 两种方法 一种直接使用NumberFormat,另一种Decimal ...
- spring mvc4的日期/数字格式化、枚举转换
日期.数字格式化显示,是web开发中的常见需求,spring mvc采用XXXFormatter来处理,先看一个最基本的单元测试: package com.cnblogs.yjmyzz.test; i ...
- 数字格式化函数:Highcharts.numberFormat()
(转)数字格式化函数:Highcharts.numberFormat() 一.函数说明 该函数用于图表中数值的格式化,常见用途有数值精度控制.小数点符.千位符显示控制等. 二.函数使用 1.函 ...
- php实现数字格式化,数字每三位加逗号的功能函数
原地址:http://www.jb51.net/article/73781.htm php实现数字格式化,数字每三位加逗号的功能函数,具体代码如下: ? 1 2 3 4 5 6 7 8 9 10 11 ...
- (转)数字格式化函数:Highcharts.numberFormat()
一.函数说明 该函数用于图表中数值的格式化,常见用途有数值精度控制.小数点符.千位符显示控制等. 二.函数使用 1.函数构造及参数 Highcharts.numberFormat (Numbe ...
- PHP数字格式化,每三位逗号分隔数字,可以保留小数
在报价的时候为了给浏览者更清晰明确的数字,所以需要用到数字格式化,有两种方法,一种自己写函数,另一种当然是系统自带的,其实我更喜欢系统自带的. 先来系统简单的: string number_forma ...
- String.Format数字格式化参考
String.Format数字格式化输出 {0:N2} {0:D2} {0:C2} (转) 数字 {0:N2} 12.36 数字 {0:N0} 13 货币 {0:c2} $12.36 货币 {0:c4 ...
随机推荐
- vue中引入了sass,又引入cssnano报错
"cssnano": { // preset: "advanced", autoprefixer: false, "postcss-zindex&qu ...
- Vue-cli 项目设置每个页面标题
页面标题 在vue-router页面配置中添加meta的title信息,配合vue-router的beforeEach注册一个前置守卫用户获取到页面配置的title const title = '移动 ...
- Apache Flink 的迁移之路,2 年处理效果提升 5 倍
一.背景与痛点 在 2017 年上半年以前,TalkingData 的 App Analytics 和 Game Analytics 两个产品,流式框架使用的是自研的 td-etl-framework ...
- C++ string.replace的使用
//下面是一个检查一个字符串中是否有'.'的函数,该函数将找到的'.'转化为'_'. inline void checkName(string& name) { std::; while (s ...
- puppet(一种Linux、Unix、windows平台的集中配置管理系统)
puppet是一种Linux.Unix.windows平台的集中配置管理系统,使用自有的puppet描述语言,可管理配置文件.用户.cron任务.软件包.系统服务等.puppet把这些系统实体称之为资 ...
- CodeForces - 1038D (线性DP)
题目:https://codeforces.com/problemset/problem/1038/D 题意:给你n个数字,每个数字可以吃左右两边的数,然后吃完后自己变成 a[i]-a[i+1]或者a ...
- POJ - 1655 (点分治-树的重心)
题目:https://vjudge.net/contest/307753#problem/D 题意:给你一棵树,让你求出一个点,让他的最大子树的节点数尽量小 思路:最大子树节点数尽量小,一看就是树的重 ...
- Workflow:Workflow 目录
ylbtech-Workflow:Workflow 目录 1.返回顶部 2.返回顶部 3.返回顶部 4.返回顶部 5.返回顶部 6.返回顶部 作者:ylbtech出处:ht ...
- Shell逻辑运算符及表达式
一. 运算符总结说明 1. 条件运算符 运算符号 代表意义 应用 说明 = 等于 整型或字符串比较: str1 = str2 字符串str1 和字符串str2 相等时返回真,如果在[]中,只能是字符串 ...
- appium常见问题10_MAC_终端输入aapt指令报错提示"command not found"
问题: MAC终端使用aapt指令"aapt dump badging xxx/xxx/xxx.apk"查看apk包名和activity时报错提示"command not ...