JAVA ArrayList.toString()方法

调用ArrayList.toString()方法返回的并不是本以为的一个拼接好的字符串,因此去找这个方法,发现在ArrayList中没有,在AbstractCollection中toString()方法被重写为:

 public String toString() {
        Iterator it = iterator();
        if (! it.hasNext())
            return "[]";

        StringBuilder sb = new StringBuilder();
        sb.append('[');
        for (;;) {
            E e = it.next();
            sb.append(e == this ? "(this Collection)" : e);
            if (! it.hasNext())
                return sb.append(']').toString();
            sb.append(',').append(' ');
        }
    }

我们可以看出,ArrayList.toString()方法返回的是一个由"[]“和”, "拼接而成的字符串。因此,如果想将ArrayList输出为一个字符串,可使用:

StringBuilder sb = new StringBuilder();
for (StringBuilder s: list){
	sb.append(s);
}
return sb.toString();

参考链接:
https://www.cnblogs.com/nwxayyf/p/10205554.html

你可能感兴趣的:(JAVA)