import java.math.BigDecimal;

/**
* 处理一些数据类型的方法的java类
* @author ljb
*
*/
public class NumberTools { /**
* 根据给定的参数进行进行四舍五入
*
* @param num
* 要四舍五入的数字
* @param roundBit
* 四舍五入位数 正数表示:小数点后位数;负数表示:小数前位数
* @return 四舍五入后的数字
*/
public static double round(double num, int roundBit) {
int piontBit = 1;
double numtmp = 0.0D;
if (roundBit < 0) {
String tmpstr = "1";
roundBit = Math.abs(roundBit);
for (int i = 0; i < roundBit; i++) {
tmpstr = tmpstr + "0";
}
piontBit = Integer.parseInt(tmpstr);
roundBit = 0;
num /= piontBit;
}
BigDecimal b = new BigDecimal(Double.toString(num));
BigDecimal one = new BigDecimal("1");
numtmp = b.divide(one, roundBit, BigDecimal.ROUND_HALF_UP).doubleValue();
return numtmp * piontBit;
} /**
* 根据给定的参数进行进行四舍五入
*
* @param num
* 四舍五入的数字
* @param roundBit
* 四舍五入位数 正数表示:小数点后位数;负数表示:小数前位数
* @return 四舍五入后的数字
*/
public static String roundToStr(double num, int roundBit) {
int piontBit = 1;
double numtmp = 0.0D;
if (roundBit < 0) {
String tmpstr = "1";
roundBit = Math.abs(roundBit);
for (int i = 0; i < roundBit; i++) {
tmpstr = tmpstr + "0";
}
piontBit = Integer.parseInt(tmpstr);
roundBit = 0;
num /= piontBit;
} BigDecimal b = new BigDecimal(Double.toString(num)); BigDecimal one = new BigDecimal("1");
if (piontBit == 1) {
return b.divide(one, roundBit, BigDecimal.ROUND_HALF_UP).toString();
}
numtmp = b.divide(one, roundBit, BigDecimal.ROUND_HALF_UP).doubleValue();
return new BigDecimal(numtmp * piontBit).toString();
} // public static void main(String[] args){
// System.out.println(roundToStr(12,2));
// } }

double四舍五入,double四舍五入并转成string的更多相关文章

  1. impala 四舍五入后转换成string后又变成一个double的数值解决(除不尽的情况)

    impala 四舍五入后转换成string后又变成一个double的数值解决(除不尽的情况)例如Query: select cast(round(2 / 3, 4)*100 as string)+-- ...

  2. (后台)Java:对double值进行四舍五入,保留两位小数的几种方法

    mport java.text.DecimalFormat; DecimalFormat df = new DecimalFormat("######0.00"); double ...

  3. Java:对double值进行四舍五入,保留两位小数的几种方法

    1. 功能 将程序中的double值精确到小数点后两位.可以四舍五入,也可以直接截断. 比如:输入12345.6789,输出可以是12345.68也可以是12345.67.至于是否需要四舍五入,可以通 ...

  4. [Java]对double变量进行四舍五入,并保留小数点后位数

    1.功能 将double类型变量进行四舍五入,并保留小数点后位数 2.代码 import java.math.BigDecimal; import java.math.RoundingMode; im ...

  5. java中将double保留两位小数,将double保留两位小数并转换成String

    将Double类型的数据保留2位小数: Double a = 3.566; BigDecimal bd = new BigDecimal(a); Double d = bd.setScale(2, B ...

  6. double型转换成string型

    double型转换成string型 题目描写叙述: 如有一个函数.其可接受一个long double參数,并将參数转换为字符串.结果字符串应保留两位小数,比如,浮点值123.45678应该生成&quo ...

  7. Java,double类型转换成String,String装换成double型

    今天,老师布置了小系统,银行用户管理系统,突然发现自己的基础知识好薄弱,就把这些记录一下, double类型转化string:Double.toString(double doub); String类 ...

  8. c语言double类型数据四舍五入

    借助math库的round函数 #include <math.h> double ext_round(double data, int precision) { , precision); ...

  9. .NET向WebService传值为decimal、double、int、DateTime等非string类型属性时,服务器端接收不到数据的问题

    最近在做CRM项目时,使用C#调用SAP PI发布的WebService服务时遇到的问题: 向WebService传值为decimal.double.int.DateTime等非string类型数据时 ...

随机推荐

  1. 代码管理——如何连接Git Server,下载代码

    最近一个项目需要与国外团队合作,而他们的代码在GitLab上,需要使用Git工具连接服务器,对于我这样一个SVN的拥护者,当然很高兴去接受这个工作了(鄙视一下目前单位还使用ClearCase). 但操 ...

  2. 软件调试——CPU异常列表

    CPU异常主要分为三类:错误类异常,陷阱类异常和终止类异常 1 错误类异常 Fault CPU遇到该类异常后,会先将CS和EIP(当前发生错误的指令,而不是下一条指令)压栈,然后跳到异常处理函数中,执 ...

  3. java线程内存模型,线程、工作内存、主内存

    转自:http://rainyear.iteye.com/blog/1734311 java线程内存模型 线程.工作内存.主内存三者之间的交互关系图: key edeas 所有线程共享主内存 每个线程 ...

  4. JAVA代码热部署,在线不停服动态更新

    本地debug的时候,可以实时编译并更新代码,线上也可以不停服来动态更新类,即所说的java热部署.   JDK代理的两种方式: 1.premain方式是Java SE5开始就提供的代理方式,但其必须 ...

  5. Mybatis 新增修改一条SQL

    如果在INSERT语句末尾指定了ON DUPLICATE KEY UPDATE,并且插入行后会导致在一个UNIQUE索引或PRIMARY KEY中出现重复值,则执行旧行UPDATE:如果不会导致唯一值 ...

  6. VUE 入门基础(3)

    三,模板语法 Vue将模板编译成虚拟DOM渲染函数,结合响应系统,在应用状态改变时,vue能够智能地计算出重新渲染组件的最小代价并DOM操作上. 插值,文本 数据绑定常见的形式就是使用"Mu ...

  7. 微软ASP.NET技术“乱谈”

    微软ASP.NET技术“乱谈” 2014新年了,顺手写的一点文字,主要谈谈我对当前微软ASP.NET技术的看法,比较随意,大伙儿随便看看吧. 1 当前微软Web平台技术全貌 从2002年发布.NET ...

  8. FireBird.conf配置文件常用参数

    1.RootDirectory  "写上Firebird服务器的安装路径" 如果不对FbServer服务是企动会出错的.2.DatabaseAcces 指的是访问Firebird数 ...

  9. c++ c# java 调用 c++ 写的dll

    1. vs 中新建win32 dll 项目   testdll 添加实现文件       test.cpp #include "stdafx.h" #include <ios ...

  10. select标签非空验证,第一个option value=""即可

    select标签非空验证,第一个option value=""即可,否则不能验证