Java 字符串格式(列)
Java String Formatting (Columns)
Java 中是否有本机代码或库可以像下面用 C# 制作的那样格式化字符串?
来源:Format a string into columns (C#)
public string DropDownDisplay {
get {
return String.Format("{0,-10} - {1,-10}, {2, 10} - {3,5}"),
Name, City, State, ID);
}
}
Java 为 String.format()
提供了多种设置文本和数字格式的选项。
不需要额外的库,它是内置功能。
语法与您的示例非常相似。基本上,要打印一个字符串,您可以使用 %s
占位符。对于小数,使用 %d
。请参阅上面的 link 以获得所有可能类型的完整列表。
String name = "Saskia";
int age = 23;
String formattedText = String.format("%s is %d years old.", name, age);
如果您想要类似列的输出,您可以为额外的填充和对齐添加标志。
String formattedText = String.format("%-10s is %-5d years old.", name, age);
在%-10s
中,%s
定义了字符串类型,-
用于左对齐,10
定义了填充的宽度。
Java 还有一个 String
格式选项:
public String DropDownDisplay(){
return String.format("%-10s - %-10s, %10s - %5s", "name", "city", "state", "id");
}
有许多格式说明符:
%s
- 字符串值
%d
- 十进制整数
要指定宽度,您可以使用 %SomeNumber
选项,
正数将在指定宽度内右对齐,负数将左对齐.
这是 Java format examples,您可以使用
简单的 String 方法 format
提供与 C 的 printf 相同的方法。
但是 JDK class java.text.MessageFormat 提供了一组非常丰富的格式化方法。
Java 中是否有本机代码或库可以像下面用 C# 制作的那样格式化字符串?
来源:Format a string into columns (C#)
public string DropDownDisplay {
get {
return String.Format("{0,-10} - {1,-10}, {2, 10} - {3,5}"),
Name, City, State, ID);
}
}
Java 为 String.format()
提供了多种设置文本和数字格式的选项。
不需要额外的库,它是内置功能。
语法与您的示例非常相似。基本上,要打印一个字符串,您可以使用 %s
占位符。对于小数,使用 %d
。请参阅上面的 link 以获得所有可能类型的完整列表。
String name = "Saskia";
int age = 23;
String formattedText = String.format("%s is %d years old.", name, age);
如果您想要类似列的输出,您可以为额外的填充和对齐添加标志。
String formattedText = String.format("%-10s is %-5d years old.", name, age);
在%-10s
中,%s
定义了字符串类型,-
用于左对齐,10
定义了填充的宽度。
Java 还有一个 String
格式选项:
public String DropDownDisplay(){
return String.format("%-10s - %-10s, %10s - %5s", "name", "city", "state", "id");
}
有许多格式说明符:
%s
- 字符串值%d
- 十进制整数
要指定宽度,您可以使用 %SomeNumber
选项,
正数将在指定宽度内右对齐,负数将左对齐.
这是 Java format examples,您可以使用
简单的 String 方法 format
提供与 C 的 printf 相同的方法。
但是 JDK class java.text.MessageFormat 提供了一组非常丰富的格式化方法。