如何在java中去掉arraylist中的逗号和括号?
我试图弄清楚如何让某人输入字符串,然后在Java中用一个空格分隔每个字符串将其打印出来。如果你也能帮我找出如何摆脱It输出中的“end”,那也会很有帮助。这是我到目前为止的代码如何在java中去掉arraylist中的逗号和括号?,java,arrays,string,arraylist,Java,Arrays,String,Arraylist,我试图弄清楚如何让某人输入字符串,然后在Java中用一个空格分隔每个字符串将其打印出来。如果你也能帮我找出如何摆脱It输出中的“end”,那也会很有帮助。这是我到目前为止的代码 Scanner s = new Scanner (System.in); System.out.println("Enter the values for the first array, up to 10000 values, enter 'End' to quit")
Scanner s = new Scanner (System.in);
System.out.println("Enter the values for the first array, up to 10000 values, enter 'End' to quit");
ArrayList<String> firstString = new ArrayList<String>();
for(int i = 0; i <= 9999; i++)
{
firstString.replaceAll(String::toLowerCase);
if(firstString.contains("end"))
{
Collections.sort(firstString);
break;
}
else
firstString.add(s.nextLine());
}
String firstStringOut = firstString.toString();
firstStringOut.replace(",", "");
System.out.println(firstStringOut);
}
}
Scanner s=新的扫描仪(System.in);
System.out.println(“输入第一个数组的值,最多10000个值,输入'End'退出”);
ArrayList firstString=新的ArrayList();
对于(int i=0;i用以下代码替换最后3行代码:
StringBuilder sb = new StringBuilder();
for (String str : firstString) {
if (!str.equalsIgnoreCase("end")) {
sb.append(str);
sb.append(" ");
} else {
sb.deleteCharAt(sb.lastIndexOf(" "));
}
}
System.out.println(sb.toString());
它将构建一个包含您添加到列表中的所有内容的字符串,并在打印时显示每个值,每个值之间用空格分隔(也忽略“结束”)
或者您只需链接替换项或创建一个适当的正则表达式,如下所示:
firstStringOut = firstStringOut.replace(",", "").replace("[", "").replace("]", "").replace("end", "");
firstStringOut = firstStringOut.replaceAll(",|\\[|\\]|end", "");
所有方法都很好,但第一种方法最好使用IMO。看起来像是家庭作业:不要使用firstString.toString()
将其转换为字符串。但是如何去掉括号和逗号??firstStringOut.replace(“,”,”);
不更改字符串。@XtremeBaumer非常抱歉,我的错。删除了关于replace和replaceAll的错误语句。仍然要指出,以Collection.toString()开头时要小心
和删除逗号。如果元素的toString
表示形式包含逗号,则可能会导致不可预见的副作用。