private BigDecimal formatComma2BigDecimal(Object obj) {
String val = String.valueOf(obj);
if (val == null)
return new BigDecimal("0.00");
val = val.replaceAll(",", "");
if (!isNumber(val))
return new BigDecimal("0.00");
BigDecimal decimal = new BigDecimal(val);
decimal = decimal.setScale(2, RoundingMode.HALF_UP);
return decimal;
}
private String formatCommaAnd2Point(Object obj) {
BigDecimal decimal = formatComma2BigDecimal(obj);
DecimalFormat df = new DecimalFormat("#,###.00");
String decimalStr = df.format(decimal).equals(".00")?"0.00":df.format(decimal);
if(decimalStr.startsWith(".")){
decimalStr = "0"+decimalStr;
}
return decimalStr;
}
private boolean isDouble(String value) {
try {
Double.parseDouble(value);
if (value.contains("."))
return true;
return false;
} catch (NumberFormatException e) {
return false;
}
}
private boolean isInteger(String value) {
try {
Integer.parseInt(value);
return true;
} catch (NumberFormatException e) {
return false;
}
}
private boolean isNumber(String value) {
return isInteger(value) || isDouble(value);
}
分享到:
相关推荐
在Java编程中,格式化数字是一项常见的任务,用于将数字以特定的样式显示,以便于人类阅读和理解。`NumberUtil` 类很可能就是一个专门用来处理数字格式化的工具类。在这个类中,通常会包含方法来处理小数和整数的...
### Java字符串格式化String.format()详解 #### 一、引言 `String.format()` 方法是JDK 1.5引入的新特性,它提供了一种灵活且强大的方式来格式化字符串。这种方法类似于C语言中的`printf`函数,允许开发者通过指定...
在Java中使用java.text.DecimalFormat格式化数字为指定形式后输出,以满足实际需要;DecimalFormat类是NumberFormat类的一个子类,用于格式化十进制数字,可以将数字格式化为整数、浮点数、百分比数等,并且可以为要...
Java 语言中的数字格式化和大数处理是编程中非常重要的概念,特别是在处理财务、科学计算等需要精确数值表示的场景。本篇内容主要讲解了Java中的`NumberFormat`类和`DecimalFormat`类用于数字格式化,以及`...
在Java编程语言中,控制输出...总结来说,`NumberFormat`和`java.math`包的`BigInteger`、`BigDecimal`类是Java中处理格式化输出和高精度计算的关键工具。它们提供了丰富的功能,确保了在各种场景下的灵活性和精度。
另一个可能用到的库是`02.bizplant-util-NumberFormat.js`,从文件名推测,这可能是用于数字格式化的工具,提供了类似于Java的`NumberFormat`接口的功能。 `BigDecimal.js`通常用于处理大数运算,避免了JavaScript...
它是`java.text`包下的一个类,主要用于格式化十进制数字。它提供了丰富的功能,如设置数字的精度、添加千分位分隔符等。创建一个`DecimalFormat`实例后,我们可以使用`format()`方法将数字转换为字符串。 下面是一...
标题中的“数字格式化工具类”指的是在编程中用于处理数字字符串的一种实用程序类,它通常包含各种方法,用于将数字转换成特定格式,如货币、百分比、科学记数法等。这样的工具类可以极大地简化开发过程,提高代码...
1. **格式化字符串的基本语法**:在各种编程语言中,如Python的f-string、C++的printf、Java的String.format等,都有各自的字符串格式化方法。理解这些语法对于正确地构造和输出格式化的字符串至关重要。 2. **变量...
在Freemarker中,数字格式化是一个重要的功能,它允许开发者将数字以特定的格式展现出来,如货币、百分比、固定小数位数等。本文将深入探讨Freemarker数字格式化的各种方法。 一、使用内建函数`c` Freemarker中的内...
常见的格式化操作有:控制精度(如浮点数的小数位数)、填充字符(如用0填充)和对齐方式(左对齐、右对齐或居中)等。这些功能在输出报告、日志、用户界面和其他需要清晰呈现数据的场景中极其重要。 二、常见的...
总结,通过`JacksonConfig.java`和`WebMvcConfig.java`,我们可以定制Spring Boot 2.x的JSON序列化策略,实现全局时间格式化以及高精度数字的字符串表示。同时,`WebMvcConfig`还可以用于调整MVC层的其他配置,以...
我们可以使用 `NumberFormat` 对象来格式化数值,以确保读取到的数据是正确的。例如: ``` public class CommonUtil { private static NumberFormat numberFormat = NumberFormat.getNumberInstance(); static { ...
在Java编程语言中,`printf`方法是`PrintStream`类的一个重要成员,它提供了类似于C语言中的格式化输出功能。这个方法允许我们以灵活的方式控制输出内容的格式,包括精度、宽度、对齐方式等。`moneytzb`可能是指特定...
NumberFormat类是Java中一个常用的格式化数字的类,但是在格式化float类型的数字时,却会出现一些不可预测的结果。本文将详细介绍这个bug的原因和解决方法。 NumberFormat类的作用是将数字格式化为字符串,以便于人...
java.math 提供用于执行任意精度整数算法 (BigInteger) 和任意精度小数算法 (BigDecimal) 的类。 java.net 为实现网络应用程序提供类。 java.nio 定义作为数据容器的缓冲区,并提供其他 NIO 包的概述。 java.nio....
在处理Web开发过程中,经常需要...通过引入JsJava的`DecimalFormat`类,可以实现更多的数字格式化模式,从而方便地对数字进行定制化显示。在实际应用中,开发者应根据实际需求选择合适的方法或库来进行数字格式化处理。
**原理**:`DecimalFormat`是`java.text`包下的一个类,用于格式化数字。通过定义特定的格式字符串,可以实现对数字的精确格式化。 **示例代码**: ```java java.text.DecimalFormat df = new java.text....