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. leetcode 189

    189. Rotate Array Rotate an array of n elements to the right by k steps. For example, with n = 7 and ...

  2. android 存储目录

    之前一直不知道 sdcard/Android目录什么作用,我做的项目里面缓存数据到本地一般都是在sdcard上面建一个文件,然后把数据放在这个文件夹下面的子文件夹下.下面介绍一种更好的解决方法. 应用 ...

  3. Ixia测试仪的自动化

    Ixia,美国Ixia公司的通信网络测试仪. 1.Ixia的自动化测试场景 测试PC(安装IxOS)AT框架-->Tcl驱动库SIG_Teq_Ixia.tcl(加载 IxTclHal库)---- ...

  4. 解决openssl: error while loading shared libraries: libssl.so.1.1: cannot open shared object file: No such file or directory错误

    问题 在Centos7上编译安装openssl后,运行openssl version出现如下错误: openssl: error while loading shared libraries: lib ...

  5. log4net的各种Appender配置示例

    Apache log4net™ Config Examples Overview This document presents example configurations for the built ...

  6. C# ADO.NET (sql语句连接方式)(查询)

    using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.We ...

  7. ZOJ

    某年浙大研究生考试的题目. 题目描述: 对给定的字符串(只包含'z','o','j'三种字符),判断他是否能AC. 是否AC的规则如下:1. zoj能AC:2. 若字符串形式为xzojx,则也能AC, ...

  8. 【初学者教程】在电脑上安装Python,写第一个程序

    欢迎来到Python的世界 1.存在Python 2和Python 3两个版本,我该用哪个?如果书是关于2的,下载2:如果书是关于3的,就下载3.建议用Python 3,不过用2也是可以的. 2.下载 ...

  9. 关于odbc的彻底删除问题

    最近在装一个软件,由于第一次安装产生了一个错误,于是我尝试在卸载之后,重新进行安装~但是,在安装过程当中出现了一个问题. NEWLRE ODBC data source already exists. ...

  10. linux Makefile obj-m obj-y

    目标定义是Kbuild Makefile的主要部分,也是核心部分.主要是定义了要编 译的文件,所有的选项,以及到哪些子目录去执行递归操作. 最简单的Kbuild makefile 只包含一行: 例子: ...