Java保留两位小数的几种写法总结

相信大家在平时做项目时,可能会有这样的业务需求: 页面或界面上展示的数据保留小数点后两位。 那么这篇文章小编就和大家分享了利用Java保留两位小数的几种写法,文章给出了详细的示例代码,对大家的学习和理解很有帮助,有需要的朋友们下面来一起学习学习下吧。

本文列举了几个方法:

  1. 使用java.math.BigDecimal

  2. 使用java.text.DecimalFormat

  3. 使用java.text.NumberFormat

  4. 使用java.util.Formatter

  5. 使用String.format

文章末尾给大家分享了更多的拓展知识,另外可以自己实现或者借用封装好的类库来实现,在这篇文章中就不一一列举了。 下面来看看详细的介绍。

一、使用BigDecimal,保留小数点后两位

public static String format1(double value) {BigDecimal bd = new BigDecimal(value);bd = bd.setScale(2, RoundingMode.HALF_UP);return bd.toString();
}

二、使用DecimalFormat,保留小数点后两位

public static String format2(double value) {DecimalFormat df = new DecimalFormat("0.00");df.setRoundingMode(RoundingMode.HALF_UP);return df.format(value);
}

三、使用NumberFormat,保留小数点后两位

public static String format3(double value) {NumberFormat nf = NumberFormat.getNumberInstance();nf.setMaximumFractionDigits(2);/** setMinimumFractionDigits设置成2* * 如果不这么做,那么当value的值是100.00的时候返回100* * 而不是100.00*/nf.setMinimumFractionDigits(2);nf.setRoundingMode(RoundingMode.HALF_UP);/** 如果想输出的格式用逗号隔开,可以设置成true*/nf.setGroupingUsed(false);return nf.format(value);
}

四、使用java.util.Formatter,保留小数点后两位

public static String format4(double value) {/** %.2f % 表示 小数点前任意位数 2 表示两位小数 格式后的结果为 f 表示浮点型*/return new Formatter().format("%.2f", value).toString();
}

五、使用String.format来实现

public static String format5(double value) {return String.format("%.2f", value).toString();
}

扩展知识

String.format作为文本处理工具,为我们提供强大而丰富的字符串格式化功能。

对浮点数进行格式化

占位符格式为: %[index$][标识]*[最小宽度][.精度]转换符

double num = 123.4567899;
System.out.print(String.format("%f %n", num)); // 123.456790 
System.out.print(String.format("%a %n", num)); // 0x1.edd3c0bb46929p6 
System.out.print(String.format("%g %n", num)); // 123.457

可用标识:

-,在最小宽度内左对齐,不可以与0标识一起使用。

0,若内容长度不足最小宽度,则在左边用0来填充。

#,对8进制和16进制,8进制前添加一个0,16进制前添加0x。

+,结果总包含一个+或-号。

空格,正数前加空格,负数前加-号。

,,只用与十进制,每3位数字间用,分隔。

(,若结果为负数,则用括号括住,且不显示符号。

可用转换符:

b,布尔类型,只要实参为非false的布尔类型,均格式化为字符串true,否则为字符串false。

n,平台独立的换行符, 也可通过System.getProperty(“line.separator”)获取。

f,浮点数型(十进制)。显示9位有效数字,且会进行四舍五入。如99.99。

a,浮点数型(十六进制)。

e,指数类型。如9.38e+5。

g,浮点数型(比%f,%a长度短些,显示6位有效数字,且会进行四舍五入)

总结

以上就是Java中保留两位小数多种写法的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/557067.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

二级c语言基础题库100题,二级C语言上题库100题.doc

二级C语言上题库100题二级C语言上机试题汇编第01套:给定程序中,函数fun的功能是:将形参n所指变量中,各位上为偶数的数去除,剩余的数按原来从高位到低位的顺序组成一个新的数,并通过形参指针n传回所指变量。例如&#x…

spring boot + vue 前后端分离时间戳转换为 yyyy:MM:dd HH:mm:ss格式

后端 1.model(entity)注释直接转换 当返回类型为resultMap,在entity类里面相应属性上加上以下注释 JsonFormat(pattern“yyyy-MM-dd HH:mm:ss”,timezone“GMT8”)2.Mapper.xml里sql语句转换 select DATE_FORMAT(对应时间属性,’’%Y-%m-%d %H:%i:%s’’) from …

android:configchanges的作用,将uiMode附加到android:configChanges实际做什么?

我只是修复了我们应用程序中的错误.问题在于,对接或取消对接设备会导致应用程序重新启动.我在拖曳大量论坛线程后发现了此修复程序,是将uiMode附加到AndroidManifest.xml文件中的android:configChanges属性:我想确保通过提交此更改,我不会破坏其他重要功…

刘庆敏 博客linux,Linux内核源码分析--zImage出生实录(Linux-3.0 ARMv7)

内核根目录下的vmlinux映像文件是内核Makefile的默认目标。这个vmlinux映像的生成可以通过阅读内核Makefile文件得知,简单的说:Makefile解析内核配置文件.config,递归到各目录下编译出.o文件,最后将其链接成vmlinux。而这个链接成…

HSSFworkbook,XSSFworkbook,SXSSFworkbook区别总结

HSSFworkbook,XSSFworkbook,SXSSFworkbook区别总结 用JavaPOI导出Excel时,我们需要考虑到Excel版本及数据量的问题。针对不同的Excel版本,要采用不同的工具类,如果使用错了,会出现错误信息。JavaPOI导出Excel有三种形式&#xff…

android项目小说阅读开发背景颜色,Android 小说阅读护眼模式

Android 小说阅读护眼模式实现方案:采用全局dialog 覆盖APP 悬浮在 其他APP之上,给dialog设置护眼色值自定义护眼模式dialogpublic class EyeProtectionDialog extends Dialog {ImageView iv;public EyeProtectionDialog(NonNull Context context) {sup…

XSSFWorkbook与HSSFWorkbook的区别

HSSFWorkbook:是操作Excel2003以前(包括2003)的版本,扩展名是.xls XSSFWorkbook:是操作Excel2007的版本,扩展名是.xlsx

Android的APP多版本,Android多版本共存-基于gradle实现debug版和release版app共存

在开发中,测试环境与正式环境是分开的,常常需要修改配置打不同环境下的apk,而且如何在android平台下让debug和release的app共存?本着提高效率避免重复工作的目的与大家分享一个方案。本文是基于强大的AndroidStudio的构建工具gradle来实现的。…

java用XSSFWorkbook实现读写Excel

写在最前面&#xff1a;     使用的是JAVA POI实现的导出Excel&#xff1b;     POI 提供了对2003版本的Excel的支持 ---- HSSFWorkbook     POI 提供了对2007版本以及更高版本的支持 ---- XSSFWorkbook 引入相关依赖&#xff1a; <dependency><groupId&g…

android 代码植入,Android Studio之Debug(一):运行期代码植入

我们开发中经常使用IDE的Debug功能&#xff0c;使用最频繁的就是断点查看变量内容&#xff0c;这篇文章主要是介绍在Debug时很常用的一些功能&#xff0c;如Debug变量更新、动态代码植入等。背景看下面一段代码DataToStringAllArgsConstructorpublic class User {private Strin…

Java中导入、导出Excel——HSSFWorkbook 使用

一、介绍 当前B/S模式已成为应用开发的主流&#xff0c;而在企业办公系统中&#xff0c;常常有客户这样子要求&#xff1a;你要把我们的报表直接用Excel打开(电信系统、银行系统)。或者是&#xff1a;我们已经习惯用Excel打印。这样在我们实际的开发中&#xff0c;很多时候需要…

android系统电视缺点,高清智能电视安卓系统优势与不足解析

今年&#xff0c;高清智能电视开始成为平板电视市场的一大焦点&#xff0c;其凭借丰富的应用软件打下了大片的“江山”&#xff0c;作为高清智能电视&#xff0c;其高清晰度画面是必然的追求&#xff0c;而应用的丰富度是其最大的买点&#xff0c;其中最为关键的当属智能操作系…

SXSSFWorkbook使用——使用excel模板

public class Hello {public static void main(String[] args) {// 1.导入excel模板String targetPath rs.getSession().getServletContext().getRealPath("/excelModel/" fileName ".xlsx");// 2.创建一个workbook&#xff0c;对应一个Excel文件File f…

android 跳转动画黑屏,Android8.0 适配解决页面跳转过程出现短暂黑屏的问题

小菜在适配 Android8.0 过程中&#xff0c;遇到很多问题&#xff0c;有很多很常见的问题&#xff0c;今天来整理一下页面跳转时黑屏的问题。问题猜测猜测一&#xff1a;显示 Activity 页面之前会优先开启一个 Starting Window(Preview Window)&#xff0c;等待 Activity 加载完…

基于流的EXCEL文件导出,SXSSFWorkbook源码解析

当我们在实现excel导出时&#xff0c;在数据量过大的情况下&#xff0c;总是容易发生内存溢出的情况。我们可以使用POI提供的 SXSSFWorkbook 类来避免内存溢出。 注&#xff1a;基于POI4.10版本源码 以下是官方文档对SXSSF包的说明&#xff1a; SXSSF (package: org.apache.p…

android设置错误页面,Android ViewPager设置当前项目/页面时抛出IndexOutOfBounds异常

我有一个ViewPager有三个项目.我试图设置ViewPager查看最右边的页面(这将是第二个元素).这是返回IndexOutOfBounds异常,虽然我知道索引应该在边界.这是确切的堆栈&#xff1a;02-22 12:22:50.256: E/AndroidRuntime(384): FATAL EXCEPTION: main02-22 12:22:50.256: E/AndroidR…

【POI】读取Excel表中的数据

确认需要读取的表格的内容: 导入依赖&#xff1a; <dependency><groupId>org.apache.poi</groupId><artifactId>poi-ooxml</artifactId><version>4.1.1</version></dependency>package com.example;import org.apache.poi.s…

w15php系列之基础类型

一、计算100之内的偶数之和 实现思路 所有的偶数除2都为0 代码实现 <?php # 记录100以内的偶数和 $number1; $num0; while($number<100){if($number%20){ $num$number;}$number1; } echo $num; ?>输出的结果 二、计算100之内的奇数之和 实现思路 所有的奇数除…

android 从本地服务器下载文件,Retrofit2-如何从服务器下载文件

在这篇博客中&#xff0c;将会讲述使用Retrofit十分需要的一个功能&#xff1a;怎么去下载文件&#xff0c;下面会展示一些下载文件需要写的代码片段&#xff0c;从小的 png 图片到大的 zip文件。

Java操作Excel中HSSFCell.CELL_TYPE_STRING、BOOLEAN、NUMERIC无定义解决方法

错误原因&#xff1a;jar包版本更新&#xff0c;官方改动&#xff1b; 解决方法&#xff1a; 导入CellType包import org.apache.poi.ss.usermodel.CellType 使用CellType.STRING代替HSSFCell.CELL_TYPE_STRING 其他同理。 新版&#xff1a; if(cellnull||cell.equals(null)…