1、foreach是一种控制结构,在操作数组的过程中非常的好用。foreach可以遍历列表中的每一项值,如下图所示,遍历了整个数组,并把每一个值都给了$var@name=(5,7,9,3,2,6,0,1);foreach $var (@name){ print $var,"\n";}

3、但是,foreach的控制变量有一个非常好玩的地方,就是这个控制变量并不仅仅代表一个变量,而是代表了数组本身的某一个元素。额,说的比较乱,意思就是,如果改变了这个控制变量的值,那么数组本身也会被改变。如下图所示,列表中所有的值都变成hello啦。

5、这个变量对foreach有着重大的作用,他可以大大减少些foreach时的代码量。如下图所示,是不是很方便。@name=(5,7,9,3,2,6,0,1);foreach(@name){ print $_,"\n";}

7、如果我再次调用一次each的函数呢,发现取出了下一个值。所以,each会记录上一次的操作结果的,然后每一次调用都会从数组中取出下一个元素的值及索引,但不会改变数组本身的值。
