java容器的深入理解----填充
容器的填充,数组填充我前面提到了Arrays,那么容器呢,相应的也有Collections的一些方法,其中也有fill()。下面我们看个示例:
class StringAddress {
private String s;
public StringAddress(String s){this.s = s;}
/*public String toString() {
return getClass().getName() + "@" + Integer.toHexString(hashCode());
}
为了看懂打印的数据,这个是父类的tostring,由类名和该对象的散列码用无符号16进制表示*/
public String toString(){
return super.toString()+" "+s;
}
}
public class FillingLists {
public static void main(String[] args) {
List<StringAddress> list = new ArrayList<StringAddress>(Collections.nCopies(4,new StringAddress("Hello")));
System.out.println(list);
Collections.fill(list,new StringAddress("world"));
System.out.println(list);
}
}
这个示例展示两种对单个对象的引用来填充的方式但是fill()方法用法有限,它只能替换已经存在list中存在的元素,不呢添加新的元素。