Iterable(java.lang.Iterable)是集合类父类接口中其中一个,Collection接口继承了Iterable,
所以所有Collection的子类都实现了Iterable接口,所以实现了该接口的类都可以采用以下的这种
方式进行迭代 :
List list = new ArrayList();
for(Object obj : list){
//do somthong with obj
}
Iterable接口中只有一个方法
public interface Iterable<T>{
public Iterator<T> iterator();
}
下面是自己实现的一个集合类
// 继承Iterable接口实现自定义集合类
public class MyConllection<E> implements Iterable<E>{
public Iterator<E> iterator(){
return new MyIterator<E>();
}
}
// MyIterator的实现
public class MyIterator<T> implements Iterator<T>{
public boolean hasNext(){
// implement
}
public T next(){
// implement
}
public void remove(){
// implement
}
}
// 如何使用MyCollection
public static void main(String args[]){
MyCollection<String> collection = new MyCollection<String>();
for(String str : collection){
// do somethong with str
}
}