Java 用逗号分隔数组列表中的字符
可能重复:Java 用逗号分隔数组列表中的字符,java,arrays,list,arraylist,char,Java,Arrays,List,Arraylist,Char,可能重复: 除最后一个字符外,所有字符均应以逗号分隔。 示例输出:“先前猜测的字符:a、b、c、x”或“先前猜测的字符:a” 以下是我所拥有的: ArrayList<Character> charsGuessed = new ArrayList<Character>(); //takes in char guess from user char guess=getCharacterGuess(in); //adds char guessed to array cha
除最后一个字符外,所有字符均应以逗号分隔。
示例输出:“先前猜测的字符:a、b、c、x”或“先前猜测的字符:a” 以下是我所拥有的:
ArrayList<Character> charsGuessed = new ArrayList<Character>();
//takes in char guess from user
char guess=getCharacterGuess(in);
//adds char guessed to array
charsGuessed.add(guess);
int size=charsGuessed.size();
System.out.print("Previous characters guessed: ");
for(int i=0; i<size; i++)
{
if(i<=size-1)
{
System.out.print(charsGuessed.get(i) + " ");
}
else
{
System.out.print("," + " " + charsGuessed.get(i));
}
}
ArrayList charsGuessed=new ArrayList();
//接受用户的字符猜测
char guess=getCharacterGuess(在中);
//将猜测的字符添加到数组中
添加(猜测);
int size=charsGuessed.size();
System.out.print(“先前猜测的字符:”);
对于(int i=0;i使用StringBuilder
更好:
StringBuilder builder = new StringBuilder();
for (int i = 0; i < arraySize; i++){
builder.append(charsGuessed.get(i));
if (i < arraySize - 1){
builder.append(", ");
}
}
System.out.println(builder.toString());
StringBuilder=新建StringBuilder();
for(int i=0;i
这非常简单。基本上,除了最后一个字符外,您希望在列表中的每个字符后打印/附加逗号
例如:
private static void printGuessedCharacters(List<Character> chars) {
System.out.print("Characters guessed: ");
if(chars.isEmpty()) {
System.out.println("none.");
return;
}
for(int i = 0; i < chars.size(); i++) {
System.out.print(chars.get(i));
if(i < chars.size() - 1) { // If it's not the last char in list.
System.out.print(", ");
}
}
System.out.println();
}
private static void printGuessedCharacters(列表字符){
系统输出打印(“猜字符:”);
if(chars.isEmpty()){
System.out.println(“无”);
返回;
}
对于(int i=0;i
另一方面,如果你想要一个只保存唯一值的集合,你可以考虑使用哈希集而不是数组列表。这将防止你的程序多次打印出同一个字符。很好地介绍了StringBuilder
的使用。如果你碰巧使用了,你可以使用:
也许有助于你改进问题的细节。所以一句话…真的吗?
String charsGuessedConcat = Joiner.on(", ").join(charsGuessed);
System.out.print("Previous characters guessed: " + charsGuessedConcat);