大家好,我是Java编程新手,在尝试编写一些简单代码时,我看到了这个格式化字符串,我知道它是如何工作的,但我的问题是关于我们放在**%和s**之间的整数......起初我认为这可能是关于空白字段的长度,例如如果它是5,我们将看到5个空格字符,但我错了如果我们放任何小于20的整数,它根本不起作用,当我放20时,字段长度是9个空格字符...如果你能帮助我,我将不胜感激
kh212irz1#
%20s意味着如果String的长度小于20,它将被左填充。
%20s
length
(20-length)
示例:
System.out.println(":" + String.format("%20s", "HelloWorld") + ":"); : HelloWorld: System.out.println(":" + String.format("%20s", "Damn this is a long string") + ":"); :Damn this is a long string:
rhfm7lfc2#
假设您有一个名为client的对象,该对象具有getId、getName和getSurname方法(全部为字符串):
System.out.format(" id: %1$5s | \t" + " First Name: %2$-12s | \t" + " Last Name: %3$14s \n", client.getId(), client.getName(), client.getSurname());
说明:%一%二%三这些是后面参数的编号$5s声明5个空格,并检查字符串$- 12s表示12个空格,字符串将显示在左侧$14s表示14个空格,字符串将显示在右侧希望能有所帮助!"
ifmq2ha23#
当我们使用
String.format("%*some_no* s", "*some_string*")
在打印字符串之前,它将给予 some_no - length of some_string 提供空格。这意味着字符串将用空格填充,直到最终字符串的长度等于 some_nocheckout https://www.javatpoint.com/java-string-format
3条答案
按热度按时间kh212irz1#
%20s
意味着如果String的长度小于20,它将被左填充。length
个字符,并且长度〈20,那么它将在左侧添加(20-length)
个空格字符。示例:
rhfm7lfc2#
假设您有一个名为client的对象,该对象具有getId、getName和getSurname方法(全部为字符串):
说明:
%一
%二
%三
这些是后面参数的编号
$5s声明5个空格,并检查字符串
$- 12s表示12个空格,字符串将显示在左侧
$14s表示14个空格,字符串将显示在右侧
希望能有所帮助!"
ifmq2ha23#
当我们使用
在打印字符串之前,它将给予 some_no - length of some_string 提供空格。
这意味着字符串将用空格填充,直到最终字符串的长度等于 some_no
checkout https://www.javatpoint.com/java-string-format