介绍String.format()方法中的格式占位符用法。

简介: 通过综合使用它们,可以在Java中构造非常具体和高度定制的输出格式。这对于输出报道、创建用户界面或者任何需要精确控制输出格式的场合都非常有用。记住,当使用格式化方法时,需要确保提供的输入参数与占位符类型匹配,否则会抛出 java.util.IllegalFormatException。

String.format() 方法是Java中一种用于创建格式化字符串的强大工具,该方法通过占位符和参数的结合使用,可以控制字符串中数据的呈现方式。以下是一些最常用的格式占位符及其用法说明:

%s - 字符串格式占位符:
用于插入一个字符串,替换时会调用对象的 toString() 方法。
%d - 整数格式占位符:
用于插入十进制整数。
%f - 浮点数格式占位符:
用于插入十进制浮点数。可以指定小数点后的位数。
%t - 日期/时间格式占位符:
与后续字符组合使用,例如 %tY 表示四位年份,%tm 表示月份等,用于格式化日期和时间值。
%c - 字符格式占位符:
用于插入单个字符。
%b - 布尔格式占位符:
用于插入布尔值,如果参数非空非 false则结果为 true。
%e - 科学计数法表示的浮点数:
用于以科学计数法格式化浮点数。
%x 或 %X - 十六进制整数:
用于以十六进制整数格式化输出,%x 产生小写字母,而 %X 产生大写字母。
格式化字符串可以包括一个或多个格式说明符,这些说明符都以 % 符号开头。每个格式说明符都可以包含几个部分:标志、宽度、精度和转换代码。

标志:例如 - 用于左对齐输出、0 用于数字前面补零。
宽度:表示最小的输出宽度。
精度:对于浮点数而言,精度表示小数点后的位数;对于字符串而言,精度表示最大输出长度。
例如,格式说明符 "%6.2f" 表示输出的浮点数至少占6个字符宽,且小数点后有两位数字。

以下提供了一些 String.format() 方法的实例:

将字符串插入到格式化的文本中:
String name = "Java";
String formattedString = String.format("Hello %s!", name);
// 输出:"Hello Java!"

格式化整数填充零并对齐:
int number = 75;
String formattedNumber = String.format("%03d", number);
// 输出:"075"

格式化浮点数至特定小数位:
double pi = Math.PI;
String formattedPi = String.format("%.2f", pi);
// 输出:"3.14"

对齐文本并指定宽度:
String text = "Align me";
String formattedText = String.format("|%-10s|", text);
// 输出:"|Align me |" ("Align me"后面跟了两个空格,总宽度为10)

格式化当前日期为 YYYY-MM-DD 格式:
String formattedDate = String.format("%tF", new Date());
// 输出形式如:"2023-04-13"

通过综合使用它们,可以在Java中构造非常具体和高度定制的输出格式。这对于输出报道、创建用户界面或者任何需要精确控制输出格式的场合都非常有用。记住,当使用格式化方法时,需要确保提供的输入参数与占位符类型匹配,否则会抛出 java.util.IllegalFormatException。

目录
相关文章
|
2月前
|
Java
String.format 详解
在 Java 中,String.format 是一个用于格式化字符串的静态方法。它允许你按照特定的格式将数据插入到字符串中。String.format 通过使用占位符和格式化标记,可以生成具有指定格式的字符串。
207 4
|
JSON Java 数据格式
|
人工智能 Java Serverless
【MCP教程系列】搭建基于 Spring AI 的 SSE 模式 MCP 服务并自定义部署至阿里云百炼
本文详细介绍了如何基于Spring AI搭建支持SSE模式的MCP服务,并成功集成至阿里云百炼大模型平台。通过四个步骤实现从零到Agent的构建,包括项目创建、工具开发、服务测试与部署。文章还提供了具体代码示例和操作截图,帮助读者快速上手。最终,将自定义SSE MCP服务集成到百炼平台,完成智能体应用的创建与测试。适合希望了解SSE实时交互及大模型集成的开发者参考。
9377 60
|
XML Java 关系型数据库
Spring Boot 异常处理回滚事务详解(自动回滚、手动回滚、部分回滚)
Spring Boot 异常处理回滚事务详解(自动回滚、手动回滚、部分回滚)
3591 0
|
XML Java 数据库
探索 Spring Boot 中的 @Configuration 注解:核心概念与应用
【4月更文挑战第20天】在 Spring Boot 项目中,@Configuration 注解扮演了一个关键角色,它标识一个类作为配置源,这些配置用于定义和管理 Spring 应用程序中的 Bean
2390 7
|
4月前
|
人工智能 前端开发 JavaScript
SpringBoot实现网页消息推送的5种方法
本文详细介绍了在SpringBoot中实现网页消息推送的几种主流方案,包括短轮询、长轮询、SSE(Server-Sent Events)、WebSocket以及STOMP。每种方案各有优缺点,适用于不同的场景需求。短轮询简单易实现但效率低;长轮询提升了实时性但仍有限制;SSE适合单向通信且轻量高效;WebSocket支持全双工通信,适合高实时性要求的场景;STOMP基于WebSocket,提供更高级的消息传递功能。通过对比分析,开发者可根据业务需求、性能要求及浏览器兼容性选择最适合的技术方案,同时可结合多种技术实现优雅降级,优化用户体验。
895 57
|
3月前
|
安全 Java 编译器
JD-GUI,java反编译工具及原理: JavaDecompiler一个Java反编译器
Java Decompiler (JD-GUI) 是一款由 Pavel Kouznetsov 开发的图形化 Java 反编译工具,支持 Windows、Linux 和 Mac Os。它能将 `.class` 文件反编译为 Java 源代码,支持多文件标签浏览、高亮显示,并兼容 Java 5 及以上版本。JD-GUI 支持对整个 Jar 文件进行反编译,可跳转源码,适用于多种 JDK 和编译器。其原理基于将字节码转换为抽象语法树 (AST),再通过反编译生成代码。尽管程序可能带来安全风险,但可通过代码混淆降低可读性。最新版修复了多项识别错误并优化了内存管理。
1797 1
|
10月前
|
消息中间件 监控 NoSQL
Redis脑裂问题详解及解决方案
Redis脑裂问题是分布式系统中常见的复杂问题,合理配置Redis Sentinel、使用保护模式、采用分布式锁机制以及优化网络和客户端连接策略等措施,可以有效预防和解决脑裂问题。通过深入理解Redis脑裂问题的成因和影响,采取相应的解决方案,能够提高系统的可用性和数据一致性,保障Redis集群的稳定运行。希望本文能帮助你更好地理解和应对Redis脑裂问题。
820 2
|
Java Maven
构建Springboot项目、实现简单的输出功能、将项目打包成可以执行的JAR包(详细图解过程)
这篇文章详细介绍了构建SpringBoot项目的过程,包括新建工程、选择环境配置、添加依赖、项目结构说明,并演示了如何编写一个简单的Controller控制器实现输出功能,最后讲解了如何使用Maven将项目打包成可执行的JAR包,并提供了运行JAR包的命令和测试效果。
构建Springboot项目、实现简单的输出功能、将项目打包成可以执行的JAR包(详细图解过程)
|
10月前
|
Java Spring 容器
SpringBoot读取配置文件的6种方式,包括:通过Environment、@PropertySource、@ConfigurationProperties、@Value读取配置信息
SpringBoot读取配置文件的6种方式,包括:通过Environment、@PropertySource、@ConfigurationProperties、@Value读取配置信息
2229 3