(最简单)Java 格式化数字每3位加逗号分隔(自己封装好的工具类,直接可用)
Posted _陈哈哈
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了(最简单)Java 格式化数字每3位加逗号分隔(自己封装好的工具类,直接可用)相关的知识,希望对你有一定的参考价值。
滴滴滴,快上车,都在备注里了~~~
package com.softsec.util;
/**
* Created with IDEA
*
* @Author Chenhh
* @Date 2019/12/11 10:47
* @Description 格式化工具类
* @Version 1.0
*/
public class ChhUtil
/**
* 将每三个数字(或字符)加上逗号处理(通常使用金额方面的编辑)
* 5000000.00 --> 5,000,000.00
* 20000000 --> 20,000,000
* @param str 无逗号的数字
* @return 加上逗号的数字
*/
public static String strAddComma(String str)
if (str == null)
str = "";
String addCommaStr = ""; // 需要添加逗号的字符串(整数)
String tmpCommaStr = ""; // 小数,等逗号添加完后,最后在末尾补上
if (str.contains("."))
addCommaStr = str.substring(0,str.indexOf("."));
tmpCommaStr = str.substring(str.indexOf("."),str.length());
else
addCommaStr = str;
// 将传进数字反转
String reverseStr = new StringBuilder(addCommaStr).reverse().toString();
String strTemp = "";
for (int i = 0; i < reverseStr.length(); i++)
if (i * 3 + 3 > reverseStr.length())
strTemp += reverseStr.substring(i * 3, reverseStr.length());
break;
strTemp += reverseStr.substring(i * 3, i * 3 + 3) + ",";
// 将 "5,000,000," 中最后一个","去除
if (strTemp.endsWith(","))
strTemp = strTemp.substring(0, strTemp.length() - 1);
// 将数字重新反转,并将小数拼接到末尾
String resultStr = new StringBuilder(strTemp).reverse().toString() + tmpCommaStr;
return resultStr;
/**
* 将加上逗号处理的数字(字符)的逗号去掉 (通常使用金额方面的编辑)
* 5,000,000.00 --> 5000000.00
* 20,000,000 --> 20000000
* @param str 加上逗号的数字(字符)
* @return 无逗号的数字(字符)
*/
public static String strRemoveComma(String str)
if (str == null)
str = "";
String resultStr = str.replaceAll(",",""); // 需要去除逗号的字符串(整数)
return resultStr;
public static void main(String[] args)
String result = strAddComma("5000000.00"); //格式化加逗号
// String result = strRemoveComma("456,415,132.22"); //去除逗号
System.out.println(result);
如果觉得这个工具类值得收藏的兄弟,帮老弟点个赞
以上是关于(最简单)Java 格式化数字每3位加逗号分隔(自己封装好的工具类,直接可用)的主要内容,如果未能解决你的问题,请参考以下文章