我的理解是我可以使用
if (@array) { print "array not null"; }
测试数组的所有元素是否为null。有没有办法用它来测试二维数组?
答案 0 :(得分:4)
基本上,您需要循环遍历数组的第一个维度,以确定是否有任何子数组包含任何内容。这有效:
use List::Util qw( any );
if (any { @$_ } @array) { print "array not null\n"; }
如果您因使用未提供any
的旧版List :: Util而陷入困境,在这种情况下,first
将作为合理的替代品:
use List::Util qw( first );
if (first { @$_ } @array) { print "array not null\n"; }
虽然我认为比any
更能澄清代码的意图。