Collection Iterator

一Collection

因为数组的一些局限性,所以引出了集合,集合也是一种容器,但是集合却属于包容性强的容器,不限定长度,不限定类型,还可以储存应用类型,使用范围更广

Collection有两个子接口,list和set,在`两个接口下分别有对应的子实现类,

   list对应的是ArrayList  Vector   Linked

ListList集合的特点:   有序的 (存储和取出一致),可以允许重复元素

   set对应的是HashSet   TreeSet

Set集合的特点:        无序性(不能保证迭代的顺序,基于hashMap),并且元素不能重复

Collection的基本功能

boolean add(Object e) 添加功能
void clear() 删除集合中所有元素(暴力删除)
boolean remove(Object o) 删除集合中的指定元素
boolean contains(Object o) 集合中是否包含指定的元素
int size() 获取集合中的元素数
boolean retainAll(Collection c) 交集功能:   A集合对B集合取交集元素
boolean removeAll(Collection c) 删除一个集合中所有元素(删除一个算是删除)
boolean addAll(Collection c)  添加一个集合中的所有元素
boolean containsAll(Collection c) 包含所有元素
boolean retainAll(Collection c) 交集功能:   A集合对B集合取交集元素

解释:A集合对B集合取交集,交集的元素要去A集合中,boolean返回值表达的A集合的元素是否发生变化,如果发生变化,则返回true,否则,返回false

list的基本方法

void add(int index,Object element) 在指定位置处添加指定元素
Object get(int index) 返回列表中指定位置的元素
ListIterator listIterator() 列表迭代器
Object set(int index, Object element) 用指定element元素替换掉指定位置处的元素

转换功能:

二.Iterator迭代器

Iterator是一个接口,刻意通过集合获取迭代器,Iterator it = c.iterator();


 

bollean hasNext()
如果有元素可以迭代,那么返回true,否则返回false
Object next()
返回迭代的下一个元素
void remove() 从迭代器指向的 collection 中移除迭代器返回的最后一个元素
使用迭代器遍历集合的程序实现
package day12;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
//迭代器
public class Iterator1 {
public static void main(String[] args) {
	//用ArrayList创建集合对象
	Collection c=new ArrayList();
	//给集合添加字符串
	c.add("abc");
	c.add("java");
	c.add("hello");
	//集合c通过.iterator()方法类获取迭代器,且用Iterator接口类接收
	Iterator  it=c.iterator();
	//迭代器循环
	while(it.hasNext()) {
		Object ob=it.next();
		System.out.println(ob);
	}	
}
}

输出结果

abc
java
hello

迭代器总结,迭代器可以简化遍历的书写,更加直观,但是迭代器中的next()方法只能使用一次




猜你喜欢

转载自blog.csdn.net/qq_41923771/article/details/80193432