如何在java中的字符串中填充空格? [复制]
Posted
技术标签:
【中文标题】如何在java中的字符串中填充空格? [复制]【英文标题】:how to pad space within a string in java? [duplicate] 【发布时间】:2011-12-07 03:00:47 【问题描述】:可能重复:How can I pad a String in Java?
我有一种情况,我的 method1() 返回各种大小的字符串,我想在固定空间中显示字符串(比如长度为 50 个字符),如果长度大于,我可以使用 String.substring() 50 个字符但如果字符串长度小于 50 个字符不知道该怎么办,我该如何实现?
for example my method1() return (in different call) :
John
Michael
J
Ab
While method2() return :
first
Second
Third
我想像这样打印结果
John First
Michael Second
J Third
Ab Forth
我不想使用除空格以外的任何其他字符。
【问题讨论】:
我试过 String.format() 但没有帮助 【参考方案1】:public String toFixedLength(String str, int sz)
String ret;
int len = str.length();
if (len == sz)
ret = str;
else if (len > sz)
ret = str.substring(0, sz);
else // len < sz
StringBuilder sb = new StringBuilder(str);
char[] ch = new char[sz - len];
Arrays.fill(ch, ' ');
sb.append(ch);
ret = sb.toString();
return ret;
【讨论】:
在以下情况下不工作【参考方案2】:只需检查字符串的length()
并添加所需数量的空格(例如,在一个循环中)
【讨论】:
【参考方案3】:如果您有一个长度小于 50 个字符的字符串并且您想将其填充,您可以这样做:
int temp = yourstring.length
for(int i = 0; i < (50-temp); i++)
yourstring = yourstring + " ";
如果 yourstring 是您要填充的字符串并且您之前没有在代码中使用 i 作为整数,我很确定这会起作用。这样你只需要使用空间。
【讨论】:
以上是关于如何在java中的字符串中填充空格? [复制]的主要内容,如果未能解决你的问题,请参考以下文章