ArrayList()类中的toString()方法的重载源码,arraylisttostring
分享于 点击 11192 次 点评:140
ArrayList()类中的toString()方法的重载源码,arraylisttostring
类ArrayList的toString()方法的重载
List list = new ArrayList;
System.out.println(list.toString());
//ArrayList类
public class ArrayList<E> extends AbstractList<E>
implements List<E>, RandomAccess, Cloneable, java.io.Serializable
没有toString()方法,那么就找其父类
//AbstractList类
public abstract class AbstractList<E> extends AbstractCollection<E> implements List<E>
没有toString()方法,那么就找其父类
//AbstractCollection
public abstract class AbstractCollection<E> implements Collection<E>
有了toString()方法,实际上list.toString()调用的就是下面这个方法
注意:这个是在抽象类中定义的非抽象方法
public String toString() {
Iterator<E> 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(' ');
}
相关文章
- 暂无相关文章
用户点评