2025年3月24日 星期一 甲辰(龙)年 月廿三 设为首页 加入收藏
rss
您当前的位置:首页 > 计算机 > 编程开发 > Perl

Perl //= 和 ||= 的区别 | 附实验

时间:10-29来源:作者:点击数:39

结论

  • $var//=2:等价于 defined($var)||2,即 未定义 时才赋值为 2 ,否则不变( 即使是 0空字符串
  • $var||=2 :除非定义且为 true 才不会赋值,否则赋值(比如 0空字符串 时)为2。

//=

Step-1 空串

  • $var='';
  • $var//=2;
  • print "'$var'\n";
  • # perl atest4.pl
  • ''

Step-2 0

  • $var=0;
  • $var//=2;
  • print "'$var'\n";
  • # perl atest4.pl
  • '0'

Step-3 1

  • $var=1;
  • $var//=2;
  • print "'$var'\n";
  • # perl atest4.pl
  • '1'

Step-4 undef

  • $var=undef;
  • $var//=2;
  • print "'$var'\n";
  • # perl atest4.pl
  • '2'

||=

Step-1 空串

  • $var='';
  • $var||=2;
  • print $var;
  • # perl atest4.pl
  • 2

Step-2 0

  • $var=0;
  • $var||=2;
  • print $var;
  • # perl atest4.pl
  • 2

Step-3 1

  • $var=1;
  • $var||=2;
  • print $var;
  • # perl atest4.pl
  • 1

Step-4 undef

  • $var=undef;
  • $var||=2;
  • print $var;
  • # perl atest4.pl
  • 2
方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门