Android Java DecimalFormat中解决.00的问题

解决Cannot format given Object as a Number问题,理解DecimalFormat.format()方法及使用DecimalFormat保留两位小数的金额和格式化数字 解决Cannot format given Object as a Number问题,理解DecimalFormat.format()方法及使用DecimalFormat保留两位小数的金额和格式化数字。 阅读详情

 最近在做一个数字显示效果:每三个数字加一个逗号,并且保留两位小数。

如:332,630.00 195,717.00 使用的代码是:

public static String format2Decimal(float data) {
    DecimalFormat df = new DecimalFormat("#,###.00");
    return df.format(data);
}
但是在实现数字“0.00”的时候,变成了“.00”,“0.12”变成了“.12”,这样就不是我要的效果了。

 查阅了资料后发现,DecimalFormat 类主要靠 # 和 0 两种占位符号来指定数字长度。

0 表示如果位数不足则以 0 填充,# 表示只要有可能就把数字拉上这个位置。

这样我就想到了一个方法,把整数最后一位“#”改为“0”,尝试性修改了一下代码,结果完成了我要的效果。代码如下:

/**
 * 将float类型的数据转换成以3位逗号隔开的字符串,并且保留两位小数
 *
 * @return
 */
public static String format2Decimal(float data) {
    DecimalFormat df = new DecimalFormat("#,##0.00");
    return df.format(data);
}

/**
 * 将float类型的数据转换成以3位逗号隔开的字符串,并且保留一位小数
 *
 * @return
 */
public static String format1Decimal(float data) {
    DecimalFormat df = new DecimalFormat("#,##0.0");
    return df.format(data);
}

/**
 * 将float类型的数据转换成以3位逗号隔开的字符串,并且保留整数
 *
 * @return
 */
public static String format0Decimal(float data) {
    DecimalFormat df = new DecimalFormat("#,##0");
    return df.format(data);
}
好了,希望对大家有所帮助。





MDF和DHF、DMR、DHR三者差异?注册与备案文件?医疗器械产品技术要求编写指导原则 定义:设计历史文档(DHF ) 指的是描述某医疗器械成品设计过程的有关记录。内容:DHF包括设计开发活动的所有记录。从最初的策划、客户需求、设计输入,设计输出、设计验证、设计确认、所有的设计评审,设计转换,以及设计变更相关的所有记录。均属于DHF的一部分。要求:各制造商应为每个类型的器械建立并保持设计历史文件。设计历史文件应包含或引用必要的记录,以证实设计符合经批准的设计计划和法规的要求。 阅读详情

相关推荐

Sobel原理及计算过程详解

该算子包含两组3x3的矩阵,分别为横向及纵向,将之与图像作平面卷积,即可分别得出横向及纵向的亮度差分近似值。首先,我们需要构建一个Sobel算子,通常是一个 3x3 的矩阵。Sobel算子可以分别计算水平和垂直方向的梯度值,然后将两者合并得到总梯度值。索贝尔算子(Sobel operator)主要用作边缘检测,在技术上,它是一离散性差分算子,用来运算图像亮度函数的灰度近似值。所以,我们假设选择图像矩阵中的点A(1, 1),即第二行第二列的元素,对应的。接下来,我们将使用Sobel算子计算这个点的梯度值。

2301_76461741的博客 1万+

Java保留两位小数

Java保留小数,包含一些踩坑问题

公众号:Java与交易 获取更多教程 2662

抖音小游戏(IAA)巨量引擎投放指南

摘要:本文详细介绍了在巨量引擎平台投放小游戏广告的完整流程,包括五个关键步骤:1)添加小游戏资产,填写ID等信息并等待审核;2)添加事件管理,配置激活和关键行为事件;3)通过橙子建站创建落地页,设置跳转链接;4)新建广告项目,选择小程序推广目标;5)完成广告创建。

分享前端工程化、AI 应用、Agent 开发与大模型实践! 4482

DecimalFormat中#.00和0.##的使用

#:表示该位没有数字时填空显示,有则直接显示;出现在小数位部分时,n个#只保留n位有效小数(比如1.00不保留,1.11则保留) 0: 表示该位没有数字时补零显示,有则直接显示;出现在小数位部分时,n个0表示保留n位小数 另外,还有一个神奇的特例现象,不过总体表现就是上述的几个特点: #.00:小数点左边的#表示在没有数字时或只有个位且个位为零的时候填位为空 #.##:小数点左边的#表示在没有数字时填位为空 public static void main(String[] args) {

♨ 1万+

深入解析MOS管电容特性:从基础理论到高频应用

本文深入解析了MOS管的电容特性,从基础物理结构出发,详细拆解了栅氧电容、重叠电容和结电容的成因与影响。文章重点探讨了电容值随工作状态变化的非线性特性,并分析了其在CMOS高频开关电源、射频电路等应用中的关键作用,包括开关损耗、米勒效应、信号完整性挑战以及如何将电容特性转化为可控元件(如MOS变容管)的机遇。最后提供了从选型、仿真到PCB布局的实战设计指南。

weixin_29278805的博客 381

模拟IC设计避坑:手把手教你用Cadence仿真恒定跨导轨到轨运放(附完整工艺库文件)

本文详细解析了使用Cadence仿真恒定跨导轨到轨运放的全流程,涵盖电路原理、工艺库配置、尺寸设计及仿真分析。通过1:3电流镜补偿技术实现跨导稳定,提供CSMC 0.25um工艺下的实战案例,帮助工程师规避设计陷阱,提升模拟IC设计效率。

weixin_30952535的博客 493

bigDecimal 返回前端保留小数点后两位问题解决

bigDecimal 返回前端保留小数点后两位问题解决 bigDecimal保留后两位小数且返回前端不丢失小数点后的0 位数不够补零 例后端返回decimal 类型 5.00到前端会变成5 import com.fasterxml.jackson.annotation.JsonFormat; 例如 private BigDecimal rentMonth; 解决方法: 第一步:1、加注解:@JsonFormat(shape = JsonFormat.Shape.STRING...

java_2017_csdn的博客 1万+

3D Slicer中Auto3DSeg和TotalSegmentator等自动分割插件总是安装失败,怎么办?教你两招

TotalSegmentator, MONAI auto3Dseg,这些工具因分割器官多,准确性高,备受关注。同时,这些自动分割工具被集成在了3D slicer平台,非常方便临床医生做手术规划。详细了解这些工具看之前的教程👇-------- 简单概述 --------其中,MONAIAuto3DSeg扩展附带数十种针对特定临床用例的预训练分割模型,这些模型旨在快速运行,几分钟内即可在任何普通计算机上运行,无需 GPU,甚至在笔记本电脑上。

zzjlhlcd的博客 1696

java BigDecimal 如果小数点后是00时去除

BigDecimal保留两位小数

qq_30071107的博客 2001

【JDK】win 10 / win 11:jdk 8 下载、安装、配置、验证

win10 / win 11:JDK 最新版本下载 / 历史版本下载(jdk 8)、安装、配置系统环境变量、验证安装全详细操作教程

顾三殇 —— 博客空间(软件测试) 13万+

华为od 面试八股文_JAVA语言_01_含答案

华为od 面试八股文_JAVA语言_01_含答案

MISAYAONE的博客 4296

java保留数问题(#.00问题)

java保留数问题(#.00问题) 网上精彩答案很多了,只写自己做题用到的吧 简便一点的:String.format system.out.println(String.format("%.2f",f)) 自己做题常用的:DecimalFormat public void fun() { DecimalFormat df = new DecimalFormat("#.00"); System.out.println(df.format(f)); } 问题

weixin_43827530的博客 1484

学Simulink--决策规划场景实例:基于Simulink的智能车辆行为决策仿真

本文基于Simulink平台构建智能车辆变道决策仿真系统,采用MOBIL算法实现"决策-规划-执行"全流程。系统包含自车动力学模型、环境感知模块(含5%噪声)、决策控制器和轨迹规划模块,通过五次多项式实现平滑变道。仿真验证了三种典型工况:正常变道(成功率100%)、邻车拒绝让行和紧急避障,各项指标均满足要求(TTC>3s,横向加速度<2m/s²,决策周期<100ms)。文章详细介绍了建模步骤、核心算法实现和参数配置方法,并提出了强化学习、多车协同等优化方向。该模型为智能

amy_mhd的博客 151

(安卓) Android DecimalFormat (类使用)格式化数字

我们经常要将数字进行格式化,比如取2位小数,这是最常见的。Java 提供 DecimalFormat 类,帮你用最快的速度将数字格式化为你需要的样子。下面是一个例子: importjava.text.DecimalFormat;    publicclassTestNumberFormat{      publicstaticvoidmain(String[]args){     doublep

下午茶的博客 1838

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

android DecimalFormat的用法介绍

import java.text.*; import java.util.*; public class DecimalFormatSample {  public static void main(String args[]) {   DecimalFormat myformat1 = new DecimalFormat("###,###.0000");//使用系统默认的格式  

成长的味道 1495

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

Android中DecimalFormat的用法

 import java.text.*;import java.util.*;public class DecimalFormatSample { public static void main(String args[]) {  DecimalFormat myformat1 = new DecimalFormat("###,###.0000");//使用系统默认的格式  System.ou

shmily_yang的专栏 5252

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

Android DecimalFormat

分类: android2012-09-05 09:30 209人阅读 评论(0) 收藏 举报 本文对DecimalFormat类进行介绍和分析,主要包括:模式、特殊模式字符、科学计数法、舍入、阿拉伯数字、特殊值等。 并且结合实际例子,说明它的使用上的一些方法和技巧。 3       基本概念 DecimalFormat 是 NumberFormat 的一个具体子类,用于格式化十进制数字

thisiscx的专栏 572

android decimal类型,【Android】DecimalFormat简单使用

介绍DecimalFormat 是 NumberFormat 的一个具体子类,用于格式化十进制数字。在做数字格式化时,DecimalFormat还是比较方便的。常用于保留小数点后几位、数字间用,分割、四舍五入等场合。关键符号0:只要有可能就把数字拉上这个位置,不包括 0.: 小数的分隔符的占位符,:分组分隔符的占位符 (只能放在整数部分)- :缺省负数前缀。%: 乘以 100 和作为百分比显示等...

weixin_32394375的博客 1104

Android关于多语言DecimalFormat 遇到的格式化问题

      在开发中遇到在系统语言是英语和汉语时DecimalFormat没有问题,但是在西班牙语时出现了java.lang.NumberFormatException: Invalid float: "19,980",查看原始数据发现在系统语言为西班牙语下小数点变成了逗号。修改方法:Locale.setDefault(Locale.US);DecimalFormat decimalFormat ...

u012100033的博客 1825

Android DecimalFormat详解

转至:http://blog.csdn.net/brucexu1978/article/details/7598911 import java.text.*; import java.util.*; public class DecimalFormatSample {  public static void main(String args[]) {   DecimalFormat

h183288132的专栏 3932

【Android】DecimalFormat 多语言出现异常符号

DecimalFormat再未指定Locale会使用默认的Locale,不同的Locale会导致格式化时出现出乎预期的现象。如Locale为缅甸所以在多语言或者需要本地化的情况下,使用DecimalFormat最好指定Locale避免格式化出现异常。

weixin_42473228的博客 727

DecimalFormat格式化数字的国际化问题(有点坑)

默认情况下,DecimalFormat对象使用JVM的语言环境。 我们可以在使用NumberFormat类创建DecimalFormat对象时更改默认区域设置。 在下面的例子中,将为两个不同的区域设置使用相同的模式,可以在输出中看到差异。 import java.text.DecimalFormat; import java.text.NumberFormat; import java.uti...

qq1073273116的博客 2145

【android】DecimalFormat 的基础的用法

DecimalFormat十分强大,这里只是展示一些比较基础的用法 (0)截取整数部分 DecimalFormat df = new DecimalFormat("0"); df.setRoundingMode(RoundingMode.HALF_DOWN); log(df.format(123.123));//结果:123 log(df.format(123.0));//结果:123 lo...

lsh_2012的专栏 742

Android DecimalFormat的使用

DecimalFormat是NumberFormat的一个具体子类,用于格式化十进制数字。DecimalFormat包含一个模式和一组符号:符号含义:1、0 表示一个数字,如果不存在则显示为02、# 表示一个数字,不包括0,不显示则为空3、. 表示小数的分隔符的占位符4、, 表示分组分隔符的占位符5、;表示分隔格式6、- 减号,表示输出为负数,要放在最前面7、% 表示乘以100和作为百分比显示等。

weixin_58159075的博客 638

DecimalFormat的用法

记一次DecimalFormat用法 这里我用到的是将浮点数类型的数字,在转换成字符串时,需要去掉小数点后的几位数. 做一下总结,以及一些基本用法 demo: float a = 3.14; 去掉小数位 String b = new DecimalFormat(“0”).format(a); //b=3 注意:在用0尽心格式化的时候,如果传入的参数当前位没有数字,会补上0 如:String b...

WangXiaoYuuuuu 880

DecimalFormat 在Android 7.0下转换格式错误问题

DecimalFormat mDecimalFormat=new DecimalFormat("#.000000"); String dec=mDecimalFormat.format(2.33333333333); 在中文环境下输出的值正常是2.33333 但是切换到俄语环境下输出的却是2,33 我的解决办法是dec=dec.replace(",", ".");不知道有没有其他的解决办

anqingcheng的博客 932
下一篇: 微信小程序实用的布局单位vw,vh
盛国强
博客等级 码龄11年 105粉丝 22原创
评论 5
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值