ArrayList()类中的toString()方法的重载源码
类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(" ");
}
声明:该文观点仅代表作者本人,入门客AI创业平台信息发布平台仅提供信息存储空间服务,如有疑问请联系rumenke@qq.com。
- 上一篇:没有了
- 下一篇: 使用Mysql和NoSQL实现热词统计功能
