java 自定义类如何实现foreach循环

//实现Iterable接口,并实现接口中的方法

//iterator()  方法需要返回Iterator对象,所以要创建Iterator对象,实现hasNext 和next方法

public class IterTest<T> implements Iterable<T>{

private Integer[] elementData ={1,2,3,4,5};
public static void main(String[] args) {
IterTest<Integer> test = new IterTest<Integer>();
for(Integer it:test) {
System.out.println(it);
}
}

@Override
public Iterator<T> iterator() {
// TODO Auto-generated method stub
return new Itr();
}

class Itr<T> implements Iterator<Integer>{
int cur;
@Override
public boolean hasNext() {
return cur!=elementData.length;
}


@Override
public Integer next() {

return elementData[cur++];

}

}

猜你喜欢

转载自blog.csdn.net/qq_27986007/article/details/78498560