我似乎遇到了几种不同的方法来查找数组的大小.这三种方法有什么区别?
my @arr = (2);
print scalar @arr; # First way to print array size
print $#arr; # Second way to print array size
my $arrSize = @arr;
print $arrSize; # Third way to print array size
Run Code Online (Sandbox Code Playgroud) 数组和列表之间以及列表和标量上下文之间的区别已经在去年的Perl社区中进行了相当多的讨论(并且每年都是如此).我已阅读过chromatic和friedo的文章,以及这个推荐的修士节点.现在我想了解goatse运营商,中记录perlsecret.
这是我用来研究它的一些代码:
# right side gets scalar context, so commas return rightmost item
$string = qw(stuff junk things);
say $string; # things
# right side gets list context, so middle is list assigned in scalar context
$string = () = qw(stuff junk things);
say $string; # 3
# right side gets list context, so creates a list, assigns an item to $string2, and
# evaluates list in scalar context to assign to …Run Code Online (Sandbox Code Playgroud) 请帮助我理解以下片段:
my $count = @array;my @copy = @array;my ($first) = @array;(my $copy = $str) =~ s/\\/\\\\/g;my ($x) = f() or die;my $count = () = f();print($x = $y);print(@x = @y);