← eetop.cn_Perl语言入门(第四版小骆驼书)

推荐答案 测试一下

6.Boolean 值

问答题 中等 经典问答问答题

参考答案

Perl不同于其它的一些语言 ,它没有 Boolean类型。它利用如下几条规则 ◆: ◆事实上 Perl不是用的这些规则 ,但你可以利用它们 方便记忆 ,其结果是一致的 。 Perl语言入门 (第四版 ) blei@163.com 34/201 9/21/2006●如果值为数字 ,0是false;其余为真 ●如果值为字符串 ,则空串 (‘ ’)为false;其余为真 ●如果值的类型既不是数字又不是字符串 ,则将其转换为数字或字符串后再利用上述规则 ◆。 ◆这意味着 undef(很快会看到 )为false。所有的引用 (在Alpaca书中有详细讨论 )都是 true。 这些规则中有一个特殊的地方 。由于字符串 ‘ 0’和数字 0有相同的标量值 ,Perl将它们相同看待 。也就是说字符串 ‘ 0’是唯一 一个非空但值为 0的串。 如果想得到相反的值 ,可以使用一元非运算符 !。如果其后面的是 true,则得到 false;反之,则得到 true: if(! $if_bigger){ #当$if_b igger非真时,运行此代码 }

涉及知识点

  • Perl 布尔值判断规则
  • 数字 0 为假
  • 空字符串与 '0' 为假
  • undef 为假
  • 引用为真
  • 标量上下文转换
← 上一题
登录后反馈错题
下一题 →