java中四舍五入后并保留两位小数的方法(以double为例)

String.format打印

数字格式化说明的格式:

%[argument number][flags][width][.precision]type

argument number:若参数大于1,指定哪一个;

flags:符号,如(+、-、;、.);width:最小字符数;.precision:精确度;type:类型,如f:浮点。

/**

*方案一:String.format()

*/

public class Test {

public static void main(String[] args) {

double d = 3.1415926;

//直接输出结果

System.out.println(String.format("%.2f", d));

//输出结果:3.14

}

}

//若是要数据转换

DecimalFormat df = new DecimalFormat("#.##");

Double get_double = Double.parseDouble(df.format(d));

System.out.println(get_double);

DecimalFormat转换

DecimalFormat是NumberFormat的一个具体子类,用于格式化十进制数字。符号含义:

0(代表一个数字,如果不存在显示0)

符号#(代表一个或多个数字,如果不存在则显示为空)

/**

* 方案二:DecimalFormat("#.##")

*/

public class Test {

public static void main(String[] args) {

double d = 3.1415926;

DecimalFormat df = new DecimalFormat("#.00");

System.out.println(df.format(d));

}

}

//若是要数据转换

DecimalFormat df = new DecimalFormat("#.##");

Double get_double = Double.parseDouble(df.format(d));

System.out.println(get_double);

BigDecimal.setScale()

此方法用于格式化小数点。

BigDecimal.ROUND_HALF_UP表示四舍五入,setScale(2)表示保留两位小数。

/**

* 方案三:BigDecimal

*/

public class Test {

public static void main(String[] args) {

double d = 3.1415926;

BigDecimal bd = new BigDecimal(d);

BigDecimal bd2 = bd.setScale(2, BigDecimal.ROUND_HALF_UP);

System.out.println(bd2);

}

}

//若是数据转换

BigDecimal bd = new BigDecimal(d);

BigDecimal bd2 = bd.setScale(2, BigDecimal.ROUND_HALF_UP);

Double get_double=Double.parseDouble(bd2.toString());

System.out.println(get_double);

用Math.round()

将数乘以100后四舍五入,再除以100.0

注:java中Math.round()是四舍五入取整,并不能设置保留几位小数。

/**

* 方案四:round()方法

*/

public class Test {

public static void main(String[] args) {

double d = 3.1415926;

Double get_double = (double) ((Math.round(d * 100)) / 100.0);

System.out.println(get_double);

}

}

参考文献:

java小数点后保留7位_Java中如何保留小数点后两位相关推荐

  1. java截取前几位_java中怎么截取字符串前几位

    java中可以使用substring()方法截取字符串前几位. substring() 方法返回字符串的子字符串. 语法:public String substring(int beginIndex) ...

  2. ACMNO.2 输入一个华氏温度,要求输出摄氏温度。公式为 c=5(F-32)/9 输出要求有文字说明,取位2小数。 输入 一个华氏温度,浮点数 输出 摄氏温度,浮点两位小数

    题目描述 输入一个华氏温度,要求输出摄氏温度.公式为 c=5(F-32)/9 输出要求有文字说明,取位2小数. 输入 一个华氏温度,浮点数 输出 摄氏温度,浮点两位小数 样例输入 -40 样例输出 c ...

  3. double小数点后最多几位_java,double精确到小数点第几位?

    2016-09-01 00:59樊振玲 客户经理 从左边第一个不是0的数字起,到精确到的位数止,所有的数字都叫做这个数的有效数字. 两位有效数字,就是找到前三位数字,对第三位四舍五入.例 public ...

  4. bigdecimal取小数部分_Java中BigDecimal保留两位小数点有哪些方法

    Java中BigDecimal保留两位小数点有哪些方法?今天就跟长沙尚学堂小编一起来好好的了解下,到底有哪些方法,希望你至少能够掌握好一种. 保留两位小数{ 方法一:{ double c=3.1542 ...

  5. java小数是怎么运算的_JAVA中小数的运算

    虽然几乎每种处理器和编程语言都支持浮点运算,但大多数程序员很少注意它.这容易理解 ― 我们中大多数很少需要使用非整数类型.除了科学计算和偶尔的计时测试或基准测试程序,其它情况下几乎都用不着它.同样,大 ...

  6. java中用于定义小数的关键字_Java 中用于定义小数的关键字有两个:( ) 和 ( )。_学小易找答案...

    [填空题]列举至少三种中药饮片现代贮藏方法 [单选题]用于薄壁形零件联接时,应采用 . [填空题]若螺纹的直径和螺纹副的摩擦系数一定, 则拧紧螺母时的效率取决于螺纹的 和 . [单选题]以太网采用的介 ...

  7. java string 后几位_java中String占几个位元组

    java中String占几个位元组以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! java中String占几个位元组 J ...

  8. java 按位_Java中的按位运算

    一.位运算符简介: 1.按位与&.如果两个整形数据 a.b 对应位都是1,则结果位才为1,否则为0,(int 最大值0x7fffffff ): 1 int a = 0x7fffffff;2 i ...

  9. java二进制数组_Java中的二进制及基本的位运算

    Java中的二进制及基本的位运算 二进制是计算技术中广泛采用的一种数制.二进制数据是用0和1两个数码来表示的数.它的基数为2,进位规则是"逢二进一",借位规则是"借一当二 ...

最新文章

  1. CSS之定位(定位/相对定位)
  2. 多线程中的ManualResetEvent
  3. oracle is null效率,Oracle查询优化之is null和is not null优化
  4. 【java基础】idea配置jdk环境,创建项目输出“你好世界“实例
  5. 高通在物联网领域已经深耕多年
  6. 实数在java中的表示,java - 如何在Z3(Java)中从模型中获取实数值作为小数(双精度)? - SO中文参考 - www.soinside.com...
  7. HTML中,TextArea的换行问题(添加wrap属性)。
  8. 我可以在不提供FTP访问的情况下安装/更新WordPress插件吗?
  9. day39-Spring 14-Spring的JDBC模板:DBCP连接池配置
  10. 安装并启动Tomcat 8(mac版本)
  11. android电视文件管理器,2018电视文件管理器排行榜(最新)
  12. 视频播放插件AVPro1-插件介绍
  13. Linux的一些常用操作命令
  14. Android环境搭建
  15. 如何加速./mk snod打包
  16. matplotlib使用cmap
  17. 设计模式—单例模式(饿汉式、懒汉式)
  18. 转:MIME(Multipurpose Internet Mail Extensions)类型
  19. 以太坊系列---ipc实现方式---管道通信库npipe
  20. 分享50个漂亮的设计师个人作品集网站案例

热门文章

  1. 【文智背后的奥秘】系列篇——海量数据抓取
  2. android webview 选择图片上传,适配Android WebView支持上传图片,视频
  3. 剪辑技巧,将视频放在另一个视频画面上同时播放
  4. 【LG3527】[POI2011]MET-Meteors
  5. Zookeeper zkCli客户端
  6. 语义智能的方法体系及其在金融领域的应用实践
  7. 创建表空间的reuse
  8. 比较普遍的C语言游戏
  9. 黑色玫瑰为什么显示服务器奔溃,LOL:为什么玩家都说黑色玫瑰是一个神奇的大区,想进的要深思熟虑?这是啥原因?...
  10. 偷窥了阿里的图像搜索架构,干货分享给你!