数组 – 它在perl中如何工作“$_&1”
发布时间:2020-12-15 23:37:40 所属栏目:大数据 来源:网络整理
导读:我是perl初学者,我正在阅读grep函数来过滤列表.我遇到了以下程序. #!/usr/bin/perluse strict;use warnings;# initialize an arraymy @array = qw(3 4 5 6 7 8 9);# first syntax form:my @subArray = grep { $_ 1 } @array; 声明my @subArray = grep {$_ 1}
我是perl初学者,我正在阅读grep函数来过滤列表.我遇到了以下程序.
#!/usr/bin/perl use strict; use warnings; # initialize an array my @array = qw(3 4 5 6 7 8 9); # first syntax form: my @subArray = grep { $_ & 1 } @array; 声明my @subArray = grep {$_& 1} @array;在@array中返回奇数.我不明白表达式($_& 1)的工作原理.我在Google中搜索,但没有找到任何有用的链接. >这是任何一种特殊的运算符? 提前致谢. 解决方法
$_是保存当前测试值的变量&是二进制AND运算符,1是第一个.此表达式通过逻辑AND组合$_和1之间的所有位.因此,如果值为奇数,则返回1,如果值为奇数则返回0.
例如,假设$_是123,那么它的二进制表示将是1111011.十进制数1将是00000001,所以组合所有的位由你得到 123 = 1111011 1 = 0000001 - AND - 0000001 = 1 另一个例子200& 100 200 = 11001000 100 = 01100100 - AND -- 01000000 = 64 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |