如何检查数组中是否不存在要由foreach循环处理的元素?
示例:
my @array = ("abc","def","ghi");
foreach my $i (@array) {
print "I am inside array\n";
#####'Now, I want it further to go if there are no elements after
#####(or it can be said if it is the last element of array. Otherwise, go to next iteration'
print "i did this because there is no elements afterwards in array\n";
}
我可以想办法做到这一点,但不知道我是否可以得到它在一个简短的方式,无论是使用一个特定的关键字或函数。一种方法,我认为:
my $index = 0;
while ($index < scalar @array) {
##Do my functionality here
}
if ($index == scalar @array) {
print "Proceed\n";
}
3条答案
按热度按时间cld4siwp1#
有多种方法可以获得所需的结果,一些方法基于使用数组的
$index
,而另一些方法基于使用$#array-1
,$#array-1
可用于获得数组切片,即可使用$array[-1]
访问的数组的最后一个元素。ymdaylpp2#
一种检测何时在最后一个元素处进行处理的方法
语法
$#array-name
用于数组中最后一个元素的索引。还要注意,each适用于数组,这在使用索引时很有用
然后一定要阅读文档,以了解
each
的微妙之处。afdcj2ne3#
根据您要行程空数组的方式:
或