我在ArrayList中有一组字符串和一个空的String变量:
String combination;
ArrayList<String> sList = new ArrayList<String>();
sList.add("H");
sList.add("e");
sList.add("l");
sList.add("l");
sList.add("o");
我正在尝试将所有字母组合在一起,以便打印出“Hello”。
我尝试使用这样的for循环:
for (int x = 0; x < sList.size(); x++) {
combination =+ sList.get(x);
}
但是当我尝试编译它时,它说:
error: bad operand type String for unary operator '+++'
如何将这些字母与循环组合?
(请注意sList
的大小可能会改变)
答案 0 :(得分:2)
有两个错误,其中一个已经被其他人指出,这是印刷错误,第二个错误是你没有初始化字符串Bellow是两个可能的解决方案
String combination = "";
ArrayList<String> sList = new ArrayList<String>();
sList.add("H");
sList.add("e");
sList.add("l");
sList.add("l");
sList.add("o");
for (int x = 0; x < sList.size(); x++) {
combination += sList.get(x);
}
System.out.println(combination);
---------------------OR------------------------------
StringBuffer buffer = new StringBuffer(sList.size());
for (String str : sList) {
buffer.append(str);
}
System.out.println(buffer.toString());
请注意字符串是不可变的,因此它们每次都返回新对象,您也可以使用stringbuilder / stringbuffer,建议用于字符串连接,并且两个print语句产品都相同。
答案 1 :(得分:0)
更改:combination =+ sList.get(x);
至combination +=sList.get(x);
或combination =combination+sList.get(x);