说明
1、实现其他迭代器功能的接口,相当于在其他迭代器上安装一个外壳,只有一种方法。
2、聚合迭代器可以与许多迭代器结合,实现更高效的迭代。
实例
classMainIteratorimplementsIterator { private$var=array(); publicfunction__construct($array)//构造函数,初始化对象数组 { if(is_array($array)){ $this->var=$array; } } publicfunctionrewind(){ echo"rewinding\n"; reset($this->var);//将数组的内部指针指向第一个单元 } publicfunctioncurrent(){ $var=current($this->var);//返回数组中的当前值 echo"current:$var\n"; return$var; } publicfunctionkey(){ $var=key($this->var);//返回数组中内部指针指向的当前单元的键名 echo"key:$var\n"; return$var; } publicfunctionnext(){ $var=next($this->var);//返回数组内部指针指向的下一个单元的值 echo"next:$var\n"; return$var; } publicfunctionvalid(){ return!is_null(key($this->var);//判断当前单元的键是否为空 } }原文来自:https://www.py.cn
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END
暂无评论内容