当前位置: 代码迷 >> 综合 >> Java编程思想_11.持有对象(容器)_阅读笔记
  详细解决方案

Java编程思想_11.持有对象(容器)_阅读笔记

热度:96   发布时间:2024-02-11 06:55:44.0
1.容器产生背景程序总是根据运行时才知道的某些条件去创建新对象,在此之前,不知道所需对象数量和类型未解决这个普遍问题,需要在任意时刻和任意位置创建任意数量的对象,这就不能依靠命名的引用来持有每一个对象因为你不知道实际上需要多少这样的引用2.容器类型Collection:存放元素List---有序ArrayList:查询快LinkedList:增删快Set----无序,无重复元素	HashSet:查询快TreeSet:按照比较结果的升序保存对象LinkedHashSet:按照被添加的顺序保存对象Queue---一端插入,另一端移出Map:存放键值对(键唯一)HashMap:查找最快,无序TreeMap:按照比较结果的升序保存键LinkedHashMap:按照插入顺序保存键,同时保留HashMap的查询速度3.泛型标识容器中对象的类型,例如:ArrayList<User>通过使用泛型,可以在编译器防止将错误类型的对象放置到容器中4.迭代器迭代器:接受一个容器对象,并传递它,在每个对象上都执行操作迭代器是一个对象,轻量级,创建它的代价小List<Pet> pets = Pets.arrayList(12);	Iterator<Pet> it = pets.iterator();	//定义迭代器对象:Iterator<Pet> it = pets.iterator();while(it.hasNext()){	//判断是否有下一个:it.hasNext()Pet p = it.next();	//下一个元素:Pet p = it.next();}5.数组:根据数字保存对象,也可以是基本类型的数据,数组一旦生成,其容量就不可变