Java字符串格式示例


您是否尝试阅读和理解Java的String格式文档?我发现它几乎不可穿透。尽管它确实包含所有信息,但该组织仍有一些不足之处。

本指南旨在使您更清楚并简化Java中字符串格式的使用。

字符串格式

在Java中格式化字符串的最常见方法是使用String.format()。如果有一个“ java sprintf”,那就是它。

String output = String.format("%s = %d", "joe", 35);

对于格式化的控制台输出,可以使用printf()System.outSystem.err PrintStreams的format()方法。

```System.out.printf("My name is: %s%n", "joe");


创建一个`Formatter` 并将其链接到`StringBuilder`。使用`format()`方法格式化的输出将追加到`StringBuilder`。

StringBuilder sbuf = new StringBuilder(); Formatter fmt = new Formatter(sbuf); fmt.format("PI = %f%n", Math.PI); System.out.print(sbuf.toString()); // you can continue to append data to sbuf here.

**格式说明符**

这是对所有支持的转换说明符的快速参考:

![1.png](/media/images/qa/2021/02/04/11e786a35a-1.png) 

**日期和时间格式**

注意:下表中的格式字符使用“%T”而不是“%t”会使输出大写。

![1.png](/media/images/qa/2021/02/04/aa331d3fa9-1.png) 
![1.png](/media/images/qa/2021/02/04/756270d05a-1.png) 

**引数索引**

参数索引被指定为在`“ $”`之后以`“ %”`结尾的数字,并在参数列表中选择指定的参数。

String.format("%2$s", 32, "Hello"); // prints: "Hello"

**格式化整数**

借助%d格式说明符,您可以使用所有整数类型的参数,包括byte,short,int,long和BigInteger。

默认格式:

String.format("%d", 93); // prints 93

指定宽度:

String.format("|%20d|", 93); // prints: | 93|

在指定宽度内左对齐:

String.format("|%-20d|", 93); // prints: |93 |

用零填充:

String.format("|%020d|", 93); // prints: |00000000000000000093|

打印带有“ +”的正数:

(负数始终带有“-”):

String.format("|%+20d|', 93); // prints: | +93|

正数前的空格。

正常情况下,负数包含“-”。

String.format("|% d|", 93); // prints: | 93| String.format("|% d|", -36); // prints: |-36|

使用特定于语言环境的千位分隔符:

对于美国语言环境,它是“,”:

String.format("|%,d|", 10000000); // prints: |10,000,000|

将负数括在括号(“()”)内,并跳过“-”:

String.format("|%(d|", -36); // prints: |(36)|

八进制输出:

String.format("|%o|"), 93); // prints: 135

十六进制输出:

String.format("|%x|", 93); // prints: 5d

八进制和十六进制输出的备用表示形式:

打印以`“ 0”`开头的八进制数字和以“ ”开头的十六进制数字`0x`。

String.format("|%#o|", 93); // prints: 0135

String.format("|%#x|", 93); // prints: 0x5d

String.format("|%#X|", 93); // prints: 0X5D

**字符串和字符转换**

默认格式:

打印整个字符串。

String.format("|%s|", "Hello World"); // prints: "Hello World"

指定字段长度

String.format("|%30s|", "Hello World"); // prints: | Hello World|

左对齐文本

String.format("|%-30s|", "Hello World"); // prints: |Hello World |

指定最大字符数

String.format("|%.5s|", "Hello World"); // prints: |Hello|

字段宽度和最大字符数

String.format("|%30.5s|", "Hello World"); | Hello| ```

概括

本指南介绍了Java中的字符串格式。我们介绍了受支持的格式说明符。数字格式和字符串格式都支持多种标志,以表示其他格式。如果您想了解有关Java字符串的更多内容,请查看Java字符串的“注意事项”。


原文链接:https://blog.csdn.net/Beibnjin/article/details/113827586?utm_medium=distribute.pc_category.none-task-blog-hot-1.nonecase&depth_1-utm_source=distribute.pc_category.none-task-blog-hot-1.nonecase&request_id=