java小数位数保留
参考:DecimalFormat用法 - 轻剑 - 博客园
目录
1.通过String类中的format方法将数字通过保留一定位数的小数进行转换,返回的是字符串。
2.通过Decimalormat类对其进行位数控制
3.通过BigDecimal类进行进制转化
1.通过String类中的format方法将数字通过保留一定位数的小数进行转换,返回的是字符串。
例如下面的求圆的面积问题
package _5_2;
import java.lang.Math;
import java.util.Scanner;public class AreaOfCircle {public static void main(String[] args) {final double PI=(double) (Math.atan(1.0)*4); //PI的定义方式,不用3.14是为了提高精度Scanner sc=new Scanner(System.in);double r=sc.nextDouble();double area=PI*r*r; //面积求解String sa=String.format("%.7f", area);System.out.println(sa);}
}
输入:4
输出:50.2654825
2.通过Decimalormat类对其进行位数控制
DecimalFormat 是 NumberFormat 的一个具体子类,用于格式化十进制数字。帮你用最快的速度将数字格式化为你需要的样子。
DecimalFormat 包含一个模式 和一组符号
DecimalFormat 类主要靠 # 和 0 两种占位符号来指定数字长度。0 表示如果位数不足则以 0 填充,# 表示只要有可能就把数字拉上这个位置。上面的例子包含了差不多所有的基本用法,如果你想了解更多,请参考 DecimalFormat 类的文档。
符号含义:
0 一个数字
# 一个数字,不包括 0
. 小数的分隔符的占位符
, 分组分隔符的占位符
; 分隔格式。
- 缺省负数前缀。
% 乘以 100 和作为百分比显示
? 乘以 1000 和作为千进制货币符显示;用货币符号代替;如果双写,用 国际货币符号代替。如果出现在一个模式中,用货币十进制分隔符代 替十进制分隔符。
X 前缀或后缀中使用的任何其它字符,用来引用前缀或后缀中的特殊字符。
例子:
DecimalFormat df1 = new DecimalFormat("0.0"); DecimalFormat df2 = new DecimalFormat("#.#"); DecimalFormat df3 = new DecimalFormat("000.000"); DecimalFormat df4 = new DecimalFormat("###.###"); System.out.println(df1.format(12.34)); //12.3System.out.println(df2.format(12.34)); //12.3System.out.println(df3.format(12.34)); //012.340System.out.println(df4.format(12.34)); //12.34
import java.text.DecimalFormat;public class Test{public static void main(String[] args){double pi=3.1415927;//圆周率//取一位整数 System.out.println(new DecimalFormat("0").format(pi));//3//取一位整数和两位小数 System.out.println(new DecimalFormat("0.00").format(pi));//3.14//取两位整数和三位小数,整数不足部分以0填补。 System.out.println(new DecimalFormat("00.000").format(pi));//03.142 //取所有整数部分 System.out.println(new DecimalFormat("#").format(pi));//3 //以百分比方式计数,并取两位小数 System.out.println(new DecimalFormat("#.##%").format(pi));//314.16% long c=299792458;//光速 //显示为科学计数法,并取五位小数 System.out.println(new DecimalFormat("#.#####E0").format(c));//2.99792E8 //显示为两位整数的科学计数法,并取四位小数 System.out.println(new DecimalFormat("00.####E0").format(c));//29.9792E7 //每三位以逗号进行分隔。 System.out.println(new DecimalFormat(",###").format(c));//299,792,458 //将格式嵌入文本 System.out.println(new DecimalFormat("光速大小为每秒,###米").format(c)); //光速大小为每秒299,792,458米}
}
3.通过BigDecimal类进行进制转化
此类在金融场景运用较多,是对对象进行操作,要求的精度较高,使用度较低,如需参考,可通过下方链接进行具体了解或者查看官方API文档进行相关操作查询,本文不进行过多介绍
DecimalFormat用法_改变ing的博客-CSDN博客_decimalformat
java小数位数保留相关推荐
- C# 小数位数保留的方法集锦
1.System.Globalization.NumberFormatInfo provider = new System.Globalization.NumberFormatInfo(); prov ...
- java小数点后保留7位_Java中如何保留小数点后两位
java中四舍五入后并保留两位小数的方法(以double为例) String.format打印 数字格式化说明的格式: %[argument number][flags][width][.precis ...
- msyql的FORMAT()函数设置小数位数,将小数位数保留到小数点后第n位,最后一位四舍五入
FORMAT()函数 在mysql的查询中,如果我们输入的是小数类型,而保留几位小数因情况而变,我们可以用FORMAT()函数来设置想保留的几位小数.即将数据内容格式化,将数据格式化为整数或者带几 ...
- java.math.BigDecimal保留两位小数,保留小数,精确位数
http://blog.csdn.net/yuhua3272004/article/details/3075436 使用java.math.BigDecimal工具类实现 java保留两位小数问题 ...
- java 乘法保留两位小数_java.math.BigDecimal保留两位小数,保留小数,精确位数
java保留两位小数问题: 方式一(四舍五入形式保留两位小数,注意模式ROUND_HALF_UP): 四舍五入 double f = 111231.5585; BigDecimal b ...
- Java int类型的除法 向上取整 向下取整 保留小数位数
今天做了一道计算题,用到整数相除的向上取整,突然卡住了.然后查询并试用了如下方法. 一.三目运算法(向上 / 向下取整 快捷.准确) 两个int型 a.b,a / b 向上取整.可以使用 a / b ...
- 用java编写保留两位小数_Java保留两位小数的几种写法总结
摘要:这篇Java开发技术栏目下的"Java保留两位小数的几种写法总结",介绍的技术点是"Java保留两位小数.保留两位小数.两位小数.Java.小数.总结", ...
- java工作笔记018---java中BigDecimal小数位数的四舍五入等操作
技术交流QQ群[JAVA,C++,Python,.NET,BigData,AI]:170933152 这个电视购物项目大量用到了BigDecimal,有钱内存大,哈哈 一.简介 Java在java.m ...
- AndroidJava保留小数位数的几种写法
1. 使用java.math.BigDecimal 2. 使用java.text.DecimalFormat 3. 使用java.text.NumberFormat 4. 使用java.util.Fo ...
- java精确小数位数的几种方法
java中精确小数位数的几种方法 /* * 这里假设精确到小数点后5位 */ public class AccurateDecimalPart { public static void main(St ...
最新文章
- 2021年大数据常用语言Scala(三十六):scala高级用法 泛型
- java build path entries 为空_同事的代码简直没法看,我来教你如何更优雅的设计Java异常...
- 用「我的世界」自动生成「现实世界」:英伟达展示AI脑补新技术
- SAP云平台上应用的HTTPS证书
- python json转csv_python – 如何将JSON转换为CSV?
- Active Diretory 全攻略(六)--文件夹权限与共享(2)
- 【Maven】win10系统安装Maven
- python 保存dataframe_在python2中将dataframe保存到CSV
- Windows Phone SDK 7.1 简体中文版离线安装包地址
- Makedown文件保存问题
- 第一周golang学习:--基本数据类型与string字符串类型之间的转换
- win7安装IIS常见问题汇总
- Linux makefile 教程 非常详细,且易懂
- 计算机等级考试报名班级填什么,全国计算机等级考试报名流程
- SSL证书错误怎么办?浏览器常见SSL证书报错解决办法
- von-ui组件库文档
- 数量遗传学 第二章 群体的遗传组成
- mw320r虚拟服务器,水星MW320R路由器桥接设置教程-水星路由器设置
- 使用logisim设计简易CPU
- jpa mysql_Spring boot通过JPA访问MySQL数据库