Java格式字符串怎么使用(java,开发技术)

时间:2024-05-03 21:44:51 作者 : 石家庄SEO 分类 : 开发技术
  • TAG :

    Java%E6%A0%BC%E5%BC%8F%E5%AD%97%E7%AC%A6%E4%B8%B2%E6%80%8E%E4%B9%88%E4%BD%BF%E7%94%A8

该类提供了对布局调整和对齐的支持,对数字、字符串和日期/时间数据的常用格式,以及本地特定的输出。支持常见的Java类型,如byte、BigDecimal和Calendar。通过Formattable接口为任意的用户类型提供有限的格式化定制。
格式化器对于多线程访问不一定安全。线程安全是可选的。

举例说明:

如以下调用所示,存在用于常见格式化请求的便捷方法:

像 C语言的sprintf(3),字符串可以使用静态方法格式化String.format

*每个产生格式化输出的方法都需要一个格式字符串和一个参数列表。

格式字符串是一个String可能包含固定文本和一个或多个嵌入格式说明符的字符串。

https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Formatter.html#syntax

此格式字符串是该format方法的第一个参数。它包含三个格式说明符“%1$tm”、“%1$te”和“%1$tY”,它们指示应如何处理参数以及应在文本中插入的位置。格式字符串的其余部分是固定文本"Dukes Birthday: ",包括任何其他空格或标点符号。参数列表包含在格式字符串之后传递给方法的所有参数。

通用、字符和数字类型的格式说明符具有以下语法:

%[argument_index$][flags][width][.precision]conversion

可选的argument_index是一个十进制的整数,表示参数在参数列表中的位置。第一个参数用 "1$"引用,第二个用 "2$"引用,等等。

可选的flags是一组用于修改输出格式的字符。有效标志的集合取决于转换的情况。

可选的width是一个正的十进制整数,表示要写入输出的最小字符数。

可选的precision是一个非负的十进制整数,通常用于限制字符的数量。具体行为取决于转换的情况。

所需的conversion是一个字符,表示参数应该如何被格式化。一个给定参数的有效转换集取决于该参数的数据类型。

用于表示日期和时间的类型的格式说明符具有以下语法:

%[argument_index$][flags][width]conversion

可选的argument_index、flags和width定义如上。

所需的conversion是两个字符序列。第一个字符是't''T'。第二个字符表示要使用的格式。这些字符与 GNUdate和 POSIXstrftime(3c)定义的字符相似但不完全相同。

与参数不对应的格式说明符具有以下语法:

%[flags][width]conversion

可选flags和width定义如上。

所需的conversion是指示要在输出中插入的内容的字符。

conversion

conversion分为以下几类:

一般- 可应用于任何参数类型

字符- 可应用于表示 Unicode 字符的基本类型:charCharacterbyteByteshortShort.这种转换也可以应用于类型int和Integer当Character.isValidCodePoint(int)返回true时

数字

Integral- 可以应用于 Java 整数类型:byte,Byte,short,Short,intandInteger,long,Long, andBigInteger(但不是char或者Character

浮点- 可应用于 Java 浮点类型:floatFloatdoubleDoubleBigDecimal

日期/时间- 可应用于能够编码日期或时间的 Java 类型:longLongCalendarDateTemporalAccessor

百分比- 产生字面的'%'('\u0025')

行分隔符- 生成特定于平台的行分隔符

对于类别General、Character、Numberic、Integral和Date/Time转换,除非另有说明,否则如果参数arg为null,则结果为 "null"。

日期/时间转换

以下日期和时间转换后缀字符是定义给't','T'-这两个conversion的。

以下转换字符用于格式化时间:

以下转换字符用于格式化日期:

以下转换字符用于格式化常见的日期/时间组合。

任何未明确定义为日期/时间转换后缀的字符都是非法的,并为将来的扩展保留。

Flags

1取决于 Formattable的定义

2仅用于'd'conversion。

3仅适用于'o''x''X'conversion。

4对于'd','o','x', 和'X'conversions应用于BigInteger'd'应用于byte,Byte,short,Short,intInteger,long, 和Long

5仅适用于'e''E''f''g''G'conversion。

任何未明确定义为标志的字符都是非法的,并为将来的扩展保留。

本文:Java格式字符串怎么使用的详细内容,希望对您有所帮助,信息来源于网络。
上一篇:java设计模式中的门面模式怎么实现下一篇:

5 人围观 / 0 条评论 ↓快速评论↓

(必须)

(必须,保密)

阿狸1 阿狸2 阿狸3 阿狸4 阿狸5 阿狸6 阿狸7 阿狸8 阿狸9 阿狸10 阿狸11 阿狸12 阿狸13 阿狸14 阿狸15 阿狸16 阿狸17 阿狸18