数字格式化工具DecimalFormat
2021/12/30 23:12:08
本文主要是介绍数字格式化工具DecimalFormat,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
==========================================数字格式化工具
import java.math.BigDecimal; public class DecimalFormatUtil { public static int ROUND_HALF_UP = BigDecimal.ROUND_HALF_UP;//四舍五入,舍弃部分如果大于等于5就进位,小于5的直接舍弃 public static int ROUND_HALF_DOWN = BigDecimal.ROUND_HALF_DOWN;//五舍六入,舍弃部分如果大于5才进位,小于或等于5直接舍弃 public static int ROUND_HALF_EVEN = BigDecimal.ROUND_HALF_EVEN; public static int ROUND_UP = BigDecimal.ROUND_UP;//舍弃部分如果大于等于1,就进位,否则舍弃 public static int ROUND_DOWN = BigDecimal.ROUND_DOWN;//直接截取,不进位 public static int ROUND_FLOOR = BigDecimal.ROUND_FLOOR; public static int ROUND_CEILING = BigDecimal.ROUND_CEILING; public static int ROUND_UNNECESSARY = BigDecimal.ROUND_UNNECESSARY; /** * 整数格式化(最后一位四舍五入) * @param input * @param roundingMode * @return */ public static String longFormat(BigDecimal input) { return longFormat(input, ROUND_HALF_UP); } /** * 整数格式化 * @param input * @param roundingMode * @return */ public static String longFormat(BigDecimal input, int roundingMode) { BigDecimal outputDeci = input.setScale(0, roundingMode); return outputDeci.toString(); } /** * 数字格式化(保留2位小数,最后一位四舍五入) * @param inputDouble * @return */ public static String format(BigDecimal input){ return format(input, 2, ROUND_HALF_UP); } /** * 数字格式化 * @param input * @param scale * @param roundingMode * @return */ public static String format(BigDecimal input, int scale, int roundingMode){ BigDecimal outputDeci = input.setScale(scale, roundingMode); return outputDeci.toString(); } /** * 百分数转换(两位小数,最后一位四舍五入) * @param inputStr * @return */ public static String formatPercent(BigDecimal input){ return formatPercent(input, 2, ROUND_HALF_UP); } /** * 百分数转换 * @param input * @param scale 小数位 * @param round 进位方式 * @return */ public static String formatPercent(BigDecimal input, int scale, int roundingMode){ BigDecimal inputPerent = input.multiply(new BigDecimal(100)); BigDecimal outputPerent = inputPerent.setScale(scale, roundingMode); return new StringBuffer(outputPerent.toString()).append("%").toString(); } }
==========================================数字格式化工具测试类
/** * 整数格式化 */ @Test public void test_longFormat() { BigDecimal input = new BigDecimal("2.645"); String format1 = DecimalFormatUtil.longFormat(input, DecimalFormatUtil.ROUND_HALF_UP); System.out.println(format1); String format2 = DecimalFormatUtil.longFormat(input); System.out.println(format2); } /** * 数字格式化 */ @Test public void test_format() { BigDecimal input = new BigDecimal("2.345"); String format1 = DecimalFormatUtil.format(input, 2, DecimalFormatUtil.ROUND_HALF_UP); System.out.println(format1); String format2 = DecimalFormatUtil.format(input); System.out.println(format2); } /** * 百分数转换 */ @Test public void test_formatPercent(){ BigDecimal input = new BigDecimal("2.3"); String formatPercent1 = DecimalFormatUtil.formatPercent(input, 2, DecimalFormatUtil.ROUND_HALF_UP); System.out.println(formatPercent1); String formatPercent2 = DecimalFormatUtil.formatPercent(input); System.out.println(formatPercent2); }
这篇关于数字格式化工具DecimalFormat的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-06-26终极指南:Scrum中如何设置需求优先级
- 2024-06-26AI大模型企业应用实战(25)-为Langchain Agent添加记忆功能
- 2024-06-26小白家庭 nas 搭建方案-icode9专业技术文章分享
- 2024-06-23AI大模型企业应用实战(14)-langchain的Embedding
- 2024-06-23AI大模型企业应用实战(15)-langchain核心组件
- 2024-06-23AI大模型企业应用实战(16)-langchain核心组件
- 2024-06-23AI 大模型企业应用实战(06)-初识LangChain
- 2024-06-19EntBot.ai: AI Website Chatbot for Product Guides and Development Doc
- 2024-06-17zero-shot-learning-definition-examples-comparison
- 2024-06-06Package Easy(基于 NSIS 的打包exe安装包工具)使用方法-icode9专业技术文章分享