Java基础_集合的toString()方法
2021-07-15 13:08
                         标签:lis   情况下   build   out   循环   死循环   代码   uil   public    1.代码: 2.问题:为什么直接输出的结果不是地址值呢? 	那么我们就去查看一下ArrayList的toString()方法,但是我们没有在ArrayList里面找到相关的toString()方法,那么我们去其父类里面找 3.toString()方法源码   Java基础_集合的toString()方法 标签:lis   情况下   build   out   循环   死循环   代码   uil   public    原文地址:https://www.cnblogs.com/nwxayyf/p/9536533.html
集合对象中的toString()方法
  public class Test {
	public static void main(String[] args) {
		Collection
		c.add("hello");
		c.add("world");
		c.add("java");
		System.out.println(c);
	}	
    }
	//输出结果:
	[hello, world, java]
    其实Collection
	,我们发现是有的。
    public  String toString(){
		//集合本身调用迭代器方法,得到迭代器集合
		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(‘ ‘);
		}	
	}
    //有上面的代码,我们可见toString()方法的是指2就是属于字符串的拼接,然后再遍历的情况下获取数组调用toString()方法输出。
下一篇:算法篇:目录