BigDecimal 使用 静态方法总结
转自:http://myrecord.top/?post=18
-------------千位加, public static String getQs(String old){
boolean result= old.matches("^[-+]?(([0-9]+)([.]([0-9]+))?|([.]([0-9]+))?)$");
if(result&&old!=null&&!"".equals(old)){ DecimalFormat df = new DecimalFormat("#,###");
old=df.format(Double.valueOf(old)); return old;
}else{
return old;
} } -------------数字相加,加%
public static String getSum(String parm,String parm1){
if(null!=parm&&parm1==null){
return parm;
}else if(null!=parm&&null!=parm1){
BigDecimal bef= new BigDecimal(parm.replace("%", ""));
BigDecimal afe= new BigDecimal(parm1.replace("%", ""));
return bef.add(afe).toPlainString()+"%";
}else if(null==parm&&parm1!=null){
return parm1;
}else{
return "";
}
} -----------相除保留2位
public static String getsumBili(BigDecimal bef,BigDecimal afe){
if(null!=afe&&!afe.toString().substring().equals("")){
String numStr=new java.text.DecimalFormat("0.00").format(bef.divide(afe));
return new BigDecimal(numStr).toPlainString();
}else{
return "";
}
} ---------------保留六位并且忽略后面0,这里如果位数比较多,在页面显示会是科学计数法,因为BigDecimai,
public static BigDecimal reSixBig(BigDecimal ss){
String numStr=new java.text.DecimalFormat("0.000000").format(ss);
BigDecimal newNum=new BigDecimal(numStr);
return newNum.stripTrailingZeros();
} -------------已验证------字符有可能为 0.00000123--
public static String delezero(String old){
boolean result= old.matches("^[-+]?(([0-9]+)([.]([0-9]+))?|([.]([0-9]+))?)$");
if(result&&old!=null&&!"".equals(old)){
String newStr=old;
if(old.contains(".0")&&"".equals(old.substring(old.length()-))){
old=newStr.substring(, old.length()-); -----删除.
}
return old;
}else{
return old;
} }
----toPlainString 不以科学计数法显示
----stripTrailingZeros 去除后面0,只能去除小数后有效数字之后的无效0
System.out.println(new BigDecimal("0.0000").stripTrailingZeros());
这里的0.0000便无法去除,这时便需要delezero()来处理 ------------------舍弃科学计数法
public static String reSixBig(BigDecimal ss){
String numStr=new java.text.DecimalFormat("0.000000").format(ss);
System.out.println(numStr);
BigDecimal newNum=new BigDecimal(numStr); return newNum.stripTrailingZeros().toPlainString();
} public BigDecimal add(BigDecimal value);//加法
public BigDecimal subtract(BigDecimal value); //减法
public BigDecimal multiply(BigDecimal value); //乘法
public BigDecimal divide(BigDecimal value); //除法
BigDecimal 使用 静态方法总结的更多相关文章
- 一切的浮点型进行计算操作都要用BigDecimal
简化: 1.引言 float和double类型的主要设计目标是为了科学计算和工程计算.他们执行二进制浮点运算,这是为了在广域数值范围上提供较为精确的快速近似计算而精心设计的.然而,它们没有提供完全精确 ...
- bigDecimal学习
1.引言 float和double类型的主要设计目标是为了科学计算和工程计算.他们执行二进制浮点运算,这是为了在广域数值范围上提供较为精确的快速近似计算而精心设计的.然而,它们没有提供完全精确的结果, ...
- 使用BigDecimal进行精确运算
首先我们先来看如下代码示例: 1 public class Test_1 { 2 public static void main(String[] args) { 3 System.out.print ...
- Math类中的BigDecimal
如果我们编译运行下面这个程序会看到什么? public class Test { public static void main(String args[]) { ...
- Java浮点数float,bigdecimal和double精确计算的精度误差问题总结
(转)Java浮点数float,bigdecimal和double精确计算的精度误差问题总结 1.float整数计算误差 案例:会员积分字段采用float类型,导致计算会员积分时,7位整数的数据计算结 ...
- BigDecimal 转换类型
使用BigDecimal类来进行计算的时候,主要分为以下步骤: 1.用float或者double变量构建BigDecimal对象. 2.通过调用BigDecimal的加,减,乘,除等相应的方法进行算术 ...
- Java BigDecimal大数字操作
在java中提供了大数字的操作类,即java.math.BinInteger类和java.math.BigDecimal类.这两个类用于高精度计算,其中BigInteger类是针对大整数的处理类,而B ...
- 使用Java BigDecimal进行精确运算
首先我们先来看如下代码示例: public class Test_1 { public static void main(String[] args) { System.out ...
- java BigDecimal的使用和四舍五入及格式规范(精准数据)
• Java中的简单浮点数类型float和double不能够进行运算.不光是Java,在其它很多编程语言中也有这样的问题. 如果我们编译运行下面这个程序会看到什么? public class T ...
随机推荐
- 关于修改zeppelin的代码显示
最近我在修改zeppelin(0.7版本)的源码相关的知识,目前做的工作是修改zeppelin的代码,为了让zeppelin可以可以在页面中显示数据集,并且在其数据库中存储式真实的路径1.如果我们要运 ...
- JAVA-数组或集合
哈哈,今天我们来讲解一下有关于一些数组 或者是集合的知识点 1.ArrayList,LinkedList,Vector的区别 ArrayList,LinkedList,Vector都是实现List接口 ...
- Python 文本挖掘:使用情感词典进行情感分析(算法及程序设计)
出处:http://www.ithao123.cn/content-242299.html 情感分析就是分析一句话说得是很主观还是客观描述,分析这句话表达的是积极的情绪还是消极的情绪. 原理 比如 ...
- 4 Vue.js 核心理念:数据驱动界面
1 style样式放在body里面 <style type="text/css"> .ui.segment.container { width:700px; } p { ...
- dealloc时取weakself引起崩溃
今天无意这中遇到一个奇怪的崩溃,先上引起崩溃的代码: - (void)dealloc { __weak __typeof(self)weak_self = self; NSLog(@"%@& ...
- 在sqlserver 中如何导出数据库表结构到excel表格中
先建空白excel--在数据库中的左侧找到该表, 选中需要导出的数据--Ctrl+C复制--打开记事本修改编码格式为Unicode-不自动换行保存--Ctrl+A--Ctrl+C,再打开excel-- ...
- 【Python】Django学习一:第一个Django程序
项目开发环境 Python 3.6 Django 1.11.5 Django安装 在开始安装Django之前,Django更新比较频繁,所以要选择合适的版本,这里选择Django1.11.5. pip ...
- NBA投篮
D 辅助插件:原生 游戏制作难度系数:初级 游戏教程网址:http://www.raywenderlich.com/20333/beginning-unity-3d-for-ios-part-1 1. ...
- node + express + iis + iisnode + urlrewrite搭建站点
前提条件:安装iis的电脑 准备条件: 1.下载iisnode 地址https://github.com/tjanczuk/iisnode/wiki/iisnode-releases 安装 2.下载 ...
- ASP.NET Core MVC 运行所选代码生成器时出错
添加Nuget Microsoft.VisualStudio.Web.CodeGeneration.Design Microsoft.EntityFrameworkCore.Tools