【老白学 Java】数字格式化
数字格式化

文章来源:《Head First Java》修炼感悟。
很多时候需要对数字或日期进行格式化操作,来达到某些输出效果。Java 的 Formatter 类提供了很多扩展性功能用于字符串的格式化,只要调用 String 静态方法 format() ,传入参数并设定格式就可以得到满意的字符串。
一、基本语法
1、方法定义
public static String format(String format, Object... args);
2、 方法参数
format格式字符串,描述如何格式化,必须以格式说明符 % 开始;args格式字符串中由格式说明符引用的参数。如果还有格式说明符以外的参数,则忽略。这个参数是可变参数,也可以为 0。
3、方法返回值
- 返回格式化后的字符串。
4、格式字符串

%,格式说明符,表示用它后面的格式去格式化对应的原始数据;flags,标识符,例如以逗号分隔数字,或者为数字添加正负号等;width,输出的字符串最小宽度(字符数);precision,输出位数,例如指定小数位数,截取字符个数等;type,数据类型,必须指定。
老白提醒: 以上是完整格式,其中方括号中的选项可以省略,但格式说明符和类型符号不能省略。
二、常用格式设定
%d十进制整数,以逗号分隔,例如:
String.format("%,d", 1000000000);
// 输出结果:1,000,000,000
%f,浮点数,默认保留6位小数点(四舍五入),例如:
String.format("%f", 4387.2983749872);
// 输出结果:4387.298375
%.nf,浮点数,保留 n 位小数点(四舍五入),例如:
String.format("%.2f", 4387.2983749872);
// 输出结果:4387.30
%nf,浮点数右对齐,输出至少占据 n 个字符宽度,例如:
String.format("|%,6.1f|", 42.000);
// 输出结果:| 42.0|
%-nf,浮点数左对齐,输出至少占据 n 个字符宽度,例如:
String.format("|%,-6.1f|", 42.000);
// 输出结果:|42.0 |
%.ns,字符串,截取前 n 个字符,例如:
String.format("%.5s", "hello world");
// 输出结果:hello
%0nd,在前面补零,直到满足 n 个字符宽度,例如:
String.format("%08d", 123);
// 输出结果:00000123
三、格式化多个参数
format() 方法可以同时格式化多个参数,例如有这样一个字符串:
The rank is 20,456,654 out of 100,567,890.24.
要想达到上述效果,需要对字符串中的两个数字分别进行格式化。 例如:
int one = 20456654;
double two = 100567890.243907;
String s = String.format("The rank is %,d" out of %,.2f, one, two);// 输出结果:The rank is 20,456,654 out of 100,567,890.24
参数 one 对应第一个格式标识符,two 对应第二个格式标识符,允许后面跟随多个参数。
| 《 上一篇 人性化的 Autoboxing |
|---|
相关文章:
【老白学 Java】数字格式化
数字格式化 文章来源:《Head First Java》修炼感悟。 很多时候需要对数字或日期进行格式化操作,来达到某些输出效果。Java 的 Formatter 类提供了很多扩展性功能用于字符串的格式化,只要调用 String 静态方法 format() ,传入参数…...
useCallback和forwardRef的联合使用
文章目录 一、useCallback二、forwardRef 总结了useCallback、forwardRef中的deps,以及操作子组建时会遇到数据流不同步的问题 一、useCallback useCallback可以缓存函数,这样避免组建更新导致的函数重建;useCallback在函数更新以后会在deps中…...
C# .NET CORE 开发问题汇总
1. error MSB4803: .NET Core 版本的 MSBuild 不支持“ResolveComReference”。请使用 .NET Framework 版本的 MSBuild。 引用了一个COM组件, 使用donet 命令时,提示不支持, 可以先将项目设置为x86以构建, 将COM引用添加到核心项目中,构建它,在obj\x86\…...
【C语言】拆数字组成最大数
相信你是最棒哒!!! 文章目录 题目描述 正确代码 法一注释版 简洁版 法二注释版 简洁版 题目描述 任意输入一个自然数,输出该自然数的各位数字组成的最大数。例如,输入 1593 ,则输出为 9531 。 输入描述 …...
【Git系列】根据提交打印邮箱
💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…...
Nginx在处理客户端请求的并发性发面是否依赖Linux的多线程原理
Nginx在处理客户端请求的并发性发面是否依赖Linux的多线程原理 Nginx 在处理客户端请求的并发性方面,并不依赖于 Linux 的多线程原理。 Nginx 的并发处理主要基于 事件驱动模型 和 异步非阻塞 I/O,而不是传统的多线程或多进程模型。 Nginx 的并发处理模…...
Python生成对抗神经网络GAN预测股票及LSTMs、ARIMA对比分析ETF金融时间序列可视化
全文链接:https://tecdat.cn/?p38528 本文聚焦于利用生成对抗网络(GANs)进行金融时间序列的概率预测。介绍了一种新颖的基于经济学驱动的生成器损失函数,使 GANs 更适用于分类任务并置于监督学习环境中,能给出价格回…...
深入了解C++中const的用法
文章目录 一、C中的const如何理解?二、C中的const与C语言中的const有何区别?三、const与指针、引用的结合使用 一、C中的const如何理解? 在C中,const是一个关键字,用来表示常量性,意在告诉编译器某些变量或…...
【Linux金典面试题(上)】41道Linux金典面试问题+详细解答,包含基本操作、系统维护、网络配置、脚本编程等问题。
大家好,我是摇光~,用大白话讲解所有你难懂的知识点 之前写了一篇关于 python 的面试题,感觉大家都很需要,所以打算出一个面试专栏。 【数据分析岗】Python金典面试题 这个专栏主要针对面试大数据岗位、数据分析岗位、数据运维等…...
利用Python实现多元回归预测汽车价格
引言: AI技术的热门使得大家对机器学习有了更多的关注,作为与AI技术息息相关的一门课程,从头了解基础的机器学习算法就显得十分有必要,如:梯度下降,线性回归等。 正文: 本文将讲解线性回归中多元回回归的案例 机器学习大致可以分为监督学习,非监督学习、半监督学习还…...
抓包软件fiddler和wireshark使用手册
fiddler官方文档 Fiddler 抓包教程1 Fiddler 抓包教程2 wireshark抓包学习 2添加链接描述 ip 过滤 ip.src_host ip.dst_host ip.addr mac 过滤 eth.src eth.dst eth.addr 端口过滤 tcp.port tcp.srcport tcp.dstport 协议类型过滤 arp dhcp 规则组合 and or...
初识三大 Observer
文章目录 ResizeObserver、MutationObserver和IntersectionObserver用MutationObserver实现图片懒加载MutationObserver 兼容性问题IntersectionObserver 应用MutationObserver和IntersectionObserver的区别IntersectionObserver 实例示例一:图片懒加载示例二&#…...
Eclipse MAT(Memory Analyzer Tool) 使用手册
参考:JAVA内存泄露使用MAT(Memory Analyzer Tool)快速定位代码 Eclipse MAT 1.15.0提示JDK版本最低需要使用17版本的,如果不想安装可以下载ZIP包,或者使用较低版本的MAT。 为了避免下载的17版本JDK和本地环境干扰,可以直接在MAT配…...
TongWe7.0-东方通TongWeb控制台无法访问 排查
**问题描述:**无法访问TongWeb的控制台 逐项排查: 1、控制台访问地址是否正确:http://IP:9060/console #IP是服务器的实际IP地址 2、确认TongWeb进程是否存在,执行命令:ps -ef|grep tongweb 3、确认TongWeb服务启动…...
Ariba Procurement: Administration_Master data
采购主数据集成Procurement Master Data Integration 注意:并非所有元素都是必需的,数据元素的名称可能根据ERP的不同,有所不同。 Types of Master Data Accounting 在SAP Ariba中的各种会计元素字段中,填充有效值选择列表。建…...
爬虫学习案例4
爬取猪八戒网站数据:2024-12-12 使用xpath解析元素,安装依赖库 pip install lxml使用selenium步骤我的上篇博客有提到,这里就不重复了 selenium使用博客导航 # 安装pip install lxml,使用xpath from lxml import etree import time from s…...
Angular模块化应用构建详解
文章目录 前言一、理解Angular模块(NgModule)二、创建功能模块三、懒加载模块以提高性能四、共享模块五、库模块六、最佳实践与注意事项七、案例研究:重构电子商务平台结语 前言 Angular是一款由Google支持的、用于构建动态Web应用程序的前端…...
51c大模型~合集89
我自己的原文哦~ https://blog.51cto.com/whaosoft/12815167 #OpenAI很会营销 而号称超强AI营销的灵感岛实测成效如何? OpenAI 是懂营销的,连续 12 天发布,每天一个新花样,如今刚过一半,热度依旧不减。 毫无疑问&…...
【蓝桥杯备战】Day 1
1.基础题目 LCR 018.验证回文串 给定一个字符串 s ,验证 s 是否是 回文串 ,只考虑字母和数字字符,可以忽略字母的大小写。 本题中,将空字符串定义为有效的 回文串 。 示例 1: 输入: s "A man, a plan, a canal: Panama…...
FedAdam算法:供给方信用,数据质量;更新一致性
FedAdam算法:供给方信用,数据质量;更新一致性 FedAdam算法概述 FedAdam是一种联邦学习(Federated Learning)算法。联邦学习是一种机器学习技术,它允许在多个设备或数据中心(称为客户端)上训练模型,而无需将数据集中到一个中央服务器,从而保护数据隐私。FedAdam主要用于…...
Onekey:快速获取Steam游戏清单的终极免费工具完全指南
Onekey:快速获取Steam游戏清单的终极免费工具完全指南 【免费下载链接】Onekey Onekey Steam Depot Manifest Downloader 项目地址: https://gitcode.com/gh_mirrors/one/Onekey 对于Steam游戏玩家和开发者来说,获取游戏的Depot清单文件一直是个技…...
Applite:终极Mac软件管理方案,告别终端命令的3个高效场景
Applite:终极Mac软件管理方案,告别终端命令的3个高效场景 【免费下载链接】Applite User-friendly GUI macOS application for Homebrew Casks 项目地址: https://gitcode.com/gh_mirrors/ap/Applite 还在为Mac上的软件管理而烦恼吗?每…...
【50】软考软件设计师——【终章】50篇学习复盘与工程师之路|知识复盘+领证流程+进阶指引
摘要:本文是《软件设计师50讲通关|从零基础到工程师职称》专栏第50篇终章,也是整个专栏的收官与升华篇。全文围绕「备考闭环复盘+职业长期成长」双核心展开,完成三大使命:一是全专栏50篇知识体系结构化复盘,串联基础理论、算法、设计、机考、冲刺全模块,形成可视化知识地…...
EasyAnimateV5-7b-zh-InP开源大模型实战:对接OSS对象存储自动归档生成视频
EasyAnimateV5-7b-zh-InP开源大模型实战:对接OSS对象存储自动归档生成视频 1. 从图片到视频:EasyAnimateV5-7b-zh-InP模型初探 你有没有想过,一张静态的照片,能在几秒钟内“活”过来,变成一段生动的短视频࿱…...
Phi-3-Mini-128K实战案例:法律合同长文本分析+关键条款提取效果展示
Phi-3-Mini-128K实战案例:法律合同长文本分析关键条款提取效果展示 1. 引言:当小模型遇上大合同 想象一下,你面前摆着一份长达50页的投资协议,里面密密麻麻全是法律条文。你需要快速找到其中的保密条款、违约责任和争议解决方式…...
从零开始:Docker部署Qwen2.5-7B-Instruct大模型,解决环境配置难题
从零开始:Docker部署Qwen2.5-7B-Instruct大模型,解决环境配置难题 1. 引言 在当今AI技术快速发展的时代,大型语言模型已成为技术创新的重要驱动力。Qwen2.5-7B-Instruct作为通义千问团队最新推出的指令微调模型,在知识量、编程能…...
品牌年轻化背后,是一场“决策效率”的竞争
品牌年轻化,这四个字,现在几乎成了所有消费品牌老板的“共识焦虑”。但我先把一句话放在前面——大多数企业做的,不是品牌年轻化,而是品牌“表面年轻化”。你换了logo,换了包装,拍了点短视频,请…...
Hive 常用函数详细总结
Hive 常用函数详细总结 本文汇总了 Hive 开发与面试中最常用、最实用的内置函数,每个函数均附有语法说明和代码示例。内容涵盖:字符串处理、日期时间、条件判断、聚合统计、开窗分析、集合操作、类型转换、JSON 解析等。 目录 一、字符串函数 concat / …...
毕业不焦虑,百考通AI帮你高效搞定本科毕业论文
深夜的电脑屏幕前,一个大学生正对着空白的文档发呆,毕业论文的截止日期日益临近,他却连选题都还没确定。这或许是无数毕业生共同经历过的煎熬时刻。 一、毕业季的论文困境:每个本科生都懂 又到一年毕业季,校园里弥漫着…...
蓝牙音箱开发避坑:山景BP1048后台运行参数详解(附SDK配置截图)
山景BP1048蓝牙音箱后台运行模式深度解析与实战配置 蓝牙音箱开发中,后台运行功能的设计往往成为硬件工程师的痛点。当用户切换到U盘模式时,传统方案会直接关闭蓝牙连接,导致音乐播放中断——这种体验在车载音响、智能家居等多场景切换应用中…...
