返回顶部
首页 > 资讯 > 后端开发 > JAVA >【Java】Java 中格式化字符串:String.format() 方法
  • 139
分享到

【Java】Java 中格式化字符串:String.format() 方法

java开发语言Java格式化字符串 2023-09-21 19:09:44 139人浏览 薄情痞子
摘要

本文仅供学习参考! 相关文章地址: https://www.cnblogs.com/Dhouse/p/7776780.html Https://www.javatpoint.com/java

本文仅供学习参考!

相关文章地址:

https://www.cnblogs.com/Dhouse/p/7776780.html

Https://www.javatpoint.com/java-string-fORMat

https://www.geeksforgeeks.org/java-string-format-method-with-examples/

format()

前言

虽然System.out.println()适合调试和显示简单消息,但它不太适合格式化字符串。格式化字符串不仅显示字符串内容,而且还按照指定的顺序显示内容。例如,当显示像100000000这样的大整数时,您可能需要包含逗号,以便它显示为100,000,000。与小数类似,您可能希望显示特定的小数位数,例如199.53以及四舍五入。程序员会很高兴知道 Java 提供了一些格式化方法,并为各种数据类型(例如DoubleIntegerDate)提供了充足的支持。
在 Java 中格式化字符串有三种主要方法。您可以使用**String.format()**方法、printf()方法或MessageFormat类来格式化字符串。其中,**String.format()**方法是最常用的,因此我们将在本 Java 编程教程中介绍它。我们将在以后的文章中讨论其他两个选项。

Java 中的 String.format() 方法语法

Java 的String.format()是一个静态方法,它使用给定的语言环境、格式String和参数返回格式化的**String 。**它有两种口味,如下:

public static String format(String format, Object... args)public static String format(Locale locale, String format, Object... args)
  • **locale:格式化期间应用的区域设置。但是,如果它为空,**则不应用本地化。
  • format:要格式化的字符串
  • args :格式String中格式说明符引用的参数。如果参数多于格式说明符,则忽略多余的参数。参数的数量可以变化,并且可以完全省略。

以下是如何在 Java 中使用**String.format()**的示例:

class StringFormatExample {  public static void main(String[] args) {    String name = "Rob Gravelle";    String str  = String.format("My name is %s", name);    System.out.println(str); // My name is Rob Gravelle  }}

locale 参数对于根据给定区域设置的规则格式化数字和日期特别有用。例如,以下是“ France ”的区域设置值,根据法国数字系统,用逗号替换小数点:

import java.util.*;class StringFormatLocaleExample {  public static void main(String[] args) {    System.out.format(      Locale.FRANCE,       "The value of the float " + "variable is %f  ",      10.3242342    ); // The value of the float variable is 10,324234.  }}

Java 中的 String.format() 异常

您应该知道**String.format()**方法会引发几个异常:

  • NullPointerException :如果传递的String参数为null ,则抛出此异常。
  • IllegalFormatException:如果指定的格式非法或参数不足。

开发人员几乎从不捕获这些异常,因为它们往往表明方法使用不当,而不是某种预期的运行时异常。

在 Java 中格式化字符串宽度、对齐方式和填充

String.format ()方法还允许程序员设置格式化String宽度对齐方式填充。以下类包含每个示例以及各种组合:

public class StringFormatWidthAndPaddingExample {  public static void main(String[] args) {    String greeting = "Hi Rob";        // Text width    String.format("|%20s|", greeting);    // |              Hi Rob|    System.out.println(greeting);        // Left justify text    String.format("|%-20s|", greeting);    // |Hi Rob              |    System.out.println(greeting);        // Maximum number of characters    String.format("|%.3s|", greeting);    // |Hi |    System.out.println(greeting);        // Max. characters with width    String.format("|%20.3s|", greeting);    // |                 Hi |    System.out.println(greeting);  }}

使用 String.Format() 指定类型

正如我们在上面的 locale 参数示例中看到的,**String.format()**还可以用于将其他数据类型转换和格式化为字符串。为此,Java 提供了多种格式说明符。它们以百分号字符 ( % ) 开头,并以typechar类型字符”结尾,它指示将要转换的数据类型(intfloat等)以及数据的表示方式(十进制十六进制等) Java 中格式说明符的完整语法是:

% [flags] [width] [.precision] [argsize] typechar

我们可以在下面的程序中看到各种格式说明符如何影响数据的显示:

import java.util.Date;public class StringFormatTypesExample {  public static void main(String[] args) {    String str1 = String.format("%d", 2112); // Integer value    String str2 = String.format("%f", 98.7); // Float value    String str3 = String.format("%x", 101);  // Hexadecimal value    String str4 = String.format("%o", 023);  // Octal value    String str5 = String.format("%tc", new Date()); // Date object    String str6 = String.format("%c", 'Z');  // Char value        System.out.println(str1); // 2112    System.out.println(str2); // 98.700000    System.out.println(str3); // 65    System.out.println(str4); // 23    System.out.println(str5); // Thu Jan 05 20:52:06 GMT 2023    System.out.println(str6); // Z  }}

**以下是String.format()**方法的格式说明符的完整列表:

  • %% – 插入“ % ”符号
  • %x/%X – 十六进制整数
  • %t/%T – 时间和日期
  • %s/%S – 字符串
  • %n – 插入换行符
  • %o – 八进制整数
  • %f – 十进制浮点数
  • %e/%E – 科学记数法
  • %g – 导致格式化程序使用 %f 或 %e,以较短者为准
  • %h/%H – 参数的哈希码
  • %d – 十进制整数
  • %c – 字符
  • %b/%B – 布尔值
  • %a/%A – 浮点十六进制

请注意,某些说明符可能是小写大写。说明符的大小写决定了格式化字母的大小写。除此之外,无论大小写,执行的转换都是相同的。

参数索引和 String.format()

回想一下本教程前面的内容,String.format()可以接受多个要格式化的对象。参数索引是一个整数,指示参数在该对象列表中的位置。不要与String Replace()函数的编号组$1 2∗∗等)混淆,∗参数索引∗将数字放在美元符号之前。因此,第一个参数由∗∗1 2**等)混淆,*参数索引*将数字放在美元符号之前。因此,第一个参数由**1 2等)混淆,参数索引将数字放在美元符号之前。因此,第一个参数由1引用,第二个参数由2$引用,依此类推。这是一个格式化两个数据的程序:一个浮点数和一个 字符串

public class StringFormatArgumentIndexExample {  public static void main(String[] args) {    String product = "Bread";    double price = 4.99;        String str = String.format("The price of %2$s is CAD $%1$.2f today.", price, product);        // The price of Bread is CAD $4.99 today.    System.out.println(str);  }}

END

尽管 Java 中有多种格式化字符串的方法,但**String.format()**方法由于其强大的多功能性而成为最常用的方法。从本地化、类型转换、宽度、对齐和填充,它都能满足要求!

来源地址:https://blog.csdn.net/m0_47015897/article/details/131406451

--结束END--

本文标题: 【Java】Java 中格式化字符串:String.format() 方法

本文链接: https://lsjlt.com/news/414441.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 【Java】Java 中格式化字符串:String.format() 方法
    本文仅供学习参考! 相关文章地址: https://www.cnblogs.com/Dhouse/p/7776780.html https://www.javatpoint.com/java...
    99+
    2023-09-21
    java 开发语言 Java格式化字符串
  • java中如何格式化输出字符串
    java中如何格式化输出字符串?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。java字符串格式化输出@Test public void test() { // TODO...
    99+
    2023-05-31
    java 字符串 ava
  • java字符串格式化成日期的方法是什么
    Java中可以使用SimpleDateFormat类来格式化字符串为日期。 示例代码如下: import java.text.Sim...
    99+
    2023-10-23
    java
  • mysql字符串格式化方式
    目录mysql字符串格式化mysql格式化字符串长度不够补01.前面补零 2.后面补0mysql字符串格式化 今天有一个需求,mysql查询返回的格式为:80% ,而数据库中存储的是0.89的格式 sql写法如...
    99+
    2024-04-02
  • Python字符串格式化方式
    目录什么是格式化?使用格式化的场景和目的格式化的三种方式根据类型定义的格式化 - %s关于整数的输出关于浮点数的输出关于字符串的输出字符串格式化函数 - format()format...
    99+
    2024-04-02
  • java & Android 格式化字符串详解
    %1$s %1$d Android string (java & Android 格式化字符串) 1$s // String %1$d // int //R.strin...
    99+
    2022-06-06
    JAVA 字符串 格式化 字符 Android
  • python字符串格式化(%格式符和format方式)
    目录%格式符format方式总结Python的字符串格式化有两种方式:%格式符方式,format方式 %格式符 %[(name)][flags][width].[precision]...
    99+
    2024-04-02
  • Python 创建格式化字符串方法
    目录格式化字符串Format 方法其它格式化字符串方法格式化字符串 当我们需要创建文本或文档时,我们往往希望能够将值正确格式化为结构化字符串。 Python提供了多种选项用...
    99+
    2024-04-02
  • Python中字符串的格式化方法小结
    老办法 Python2.6之前,格式字符串的使用方法相对更简单些,虽然其能够接收的参数数量有限制。这些方法在Python3.3中仍然有效,但已有含蓄的警告称将完全淘汰这些方法,目前还没有明确的时间进度表。 ...
    99+
    2022-06-04
    小结 字符串 方法
  • java中判断字符串是否日期格式的方法
    java判断指定字符串是否日期格式: @SuppressWarnings("unused") private boolean checkTimeFormat(String validateDate) { boolean flag = f...
    99+
    2020-10-16
    java基础 java
  • Java中如何将字符串转换为JSON格式字符串
    Java中如何将字符串转换为JSON格式字符串 在Java编程中,我们经常需要处理JSON数据格式。有时候,我们需要将一个普通的字符串转换为JSON格式的字符串。幸运的是,Java提供了多种方法来实现...
    99+
    2023-10-23
    java json python Java
  • Python格式化字符串的案例方法
    目录1.三种常用格式化字符串方式1.%作占位符2.使用format()3.使用 f 格式化2.字符串宽度和精度的写法1.%填充符表示法2.format()表示法3.字符串对齐方式1....
    99+
    2024-04-02
  • python中有哪些格式化字符串的方法
    本篇文章为大家展示了python中有哪些格式化字符串的方法,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。Python主要用来做什么Python主要应用于:1、Web开发;2、数据科学研究;3、网络爬...
    99+
    2023-06-14
  • Python中字符串格式化的方法是什么
    Python中字符串格式化的方法有两种: 使用百分号(%)进行格式化,例如: name = 'Alice' ...
    99+
    2024-04-02
  • Python-字符串格式化
    python字符串格式化 字符串的格式化使用f字符串使用format使用%运算符 字符串的格式化 在python3中有三种格式化方式 使用占位符格式化 2.使用format格式化 3....
    99+
    2023-10-08
    python 开发语言
  • Python字符串格式化
    字符串格式化话的标准形式为 "Template String " % (Data) 标准形式 %+8.6f 转换开始标志% 转换标志 最小宽度 精度,用小数点隔开 转换类型 转换类型表见pythonEssentialRefer...
    99+
    2023-01-31
    字符串 Python
  • Golang 字符串格式化
    php小编百草为您介绍Golang字符串格式化。在Golang中,字符串格式化是一种常见的操作,它可以帮助我们将不同类型的数据转换成字符串,并按照指定的格式进行展示。字符串格式化功能强...
    99+
    2024-02-09
  • python 中的字符串格式化
    %方式的调用 1。格式化代码 代码 意义 s 字符串,使用str r 字符串,使用repr不使用str c 字符 d 十进制的数字 i 整数 u 无符号整数 o 八进制 x 十六进制 X 大...
    99+
    2023-01-30
    字符串 python
  • Java格式字符串怎么使用
    这篇“Java格式字符串怎么使用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Java格式字符串怎么使用”文章吧。Class...
    99+
    2023-06-29
  • Java中去除字符串空格的几种方法
    String.trim(): 它去掉的只是String首尾空格,内部不处理; 2、str.replace(" ", “”): 去掉所有空格,包括首尾、中间,但是又仅仅局限于一个空格 3、str.replaceAll(" +",...
    99+
    2023-09-04
    java servlet 开发语言
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作