
说明
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


















































暂无评论内容