在Java中的字符串的字母之间添加x个空格?
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/20232639/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
Add x number of spaces between the letters of a string in Java?
提问by user3038888
I need to recieve a integer and have it print out that number of spaces in between the letters of a name. Right now I have it printing out one space.
我需要接收一个整数并让它打印出名称字母之间的空格数。现在我把它打印出来一个空格。
public static void printLongName(int spaces){
String name
char[] letter = name.toCharArray();
for(int i = 0; i < letter.length; i++)
System.out.print(" " + letter[i]);
System.out.println();
}
采纳答案by Malvon
public static void printLongName(String name, int numOfSpacesBetweenLetters) {
StringBuffer sbSpace = new StringBuffer();
for (int i = 0; i <= numOfSpacesBetweenLetters; i++) {
sbSpace.append(" ");
}
char[] letter = name.toCharArray();
for (int i = 0; i < letter.length; i++) {
System.out.println(sbSpace + letter[i]);
}
}
回答by sunleo
//System.out.print(" " + letter[i]);
//System.out.print(getSpace(10) + letter[i]);like this you can
public String getSpace(int count)
{
String space="";
for(int i=0;i<count;i++)
space+=" ";
return space;
}
回答by Omicron
I believe your looking for something like this:
我相信你正在寻找这样的东西:
System.out.format("[%13s]%n", ""); // prints "[ ]" (13 spaces)
System.out.format("[%1s]%n", ""); // prints "[ ]" (3 spaces)
This regular expression will allow you to add your spaces appropriately.
此正则表达式将允许您适当地添加空格。
回答by Prabhakaran Ramaswamy
use System.out.format()
用 System.out.format()
System.out.format("%10c", letter[i]);
update
更新
int spaces=10;
String name ="aaaaaaaa";
char[] letter = name.toCharArray();
for(int i = 0; i < letter.length; i++)
System.out.format("%10c", letter[i]);
回答by Ardy
You need build the space string first with parameter input. Please look at below code:
您需要首先使用参数输入构建空格字符串。请看下面的代码:
public static void printLongName(int spaces){
String name = "hello";
StringBuilder sb = new StringBuilder();
String spaceStr = "%"+spaces+"c";
char[] letter = name.toCharArray();
for(int i = 0; i < letter.length; i++) {
if (i == 0) {
sb.append(letter[i]);
} else {
sb.append(String.format(spaceStr, letter[i]));
}
}
System.out.println(sb);
}
public static void main(String[] args) {
printLongName(4);
}
Update some code.
更新一些代码。
回答by dansalmo
This function will return a string with spaces:
此函数将返回一个带空格的字符串:
String nameWithSpaces(String name, int spaces) {
StringBuilder sbname = new StringBuilder(name);
String spaces = String.valueOf(new char[spaces]).replace("##代码##", " ");
for (int i=1; i < sbname.length(); i += spaces.length()+1)
sbname.insert(i, spaces);
return sbname.toString();
}