首页 > 服务端语言 > Ruby 入门教程 > 06 Ruby 布尔对象

Ruby 布尔对象

本章节我们学习布尔值,了解什么是布尔值,在 Ruby 中布尔值的基本用法。

1. 什么是布尔值

布尔值是 True 或 False 中的一个。动作脚本也会在适当时将值 True 和 False 转换为 1 和 0。布尔值经常与动作脚本语句中通过比较控制脚本流的逻辑运算符一起使用。——官方定义

布尔值代表着真和假,在代码上,通常显示为truefalse

2. 在 Ruby 中使用布尔值

在 Ruby 中布尔值是一个特殊的对象。它由两个类组成,分别为TrueClassFalseClass。他们两个类分别只有一个唯一的实例,为truefalse

实例:

> true.class 
=> TrueClass
false.class
=> FalseClass

解释 :在 Ruby 中,每一个对象拥有可以查看自己所属类的方法,名为class,从上述的实例中我们看到,truefalse分别属于TrueClassFalseClass两个类。

注意事项: 在 Ruby 中nil表示空,所有对象都可以转成布尔值,只有falsenil才真的是false,其他的均为true,即便是 0。这部分内容在条件语句中会给出具体例子。

经验: 当返回的方法是布尔值的时候,要使用?作为方法的结尾,这个要当做是Ruby代码的编写规范。方法的定义稍后会在Ruby的方法章节具体给出例子。我们统称这种结尾带问号的方法为 布尔方法

实例:

# 判断123是空吗?
> 123.nil?
=> false

# 判断字符串daadsasd是否内部定义了downcase方法
> "daadsasd".respond_to?("downcase!")
=> true

3. 逻辑运算符

在 Ruby 中我们在执行一些复杂的判断的时候会使用到逻辑运算符(也就是与、或、非),具体的表格如下:

运算符 时机简介(调用的时机) 例子
and 当左右都为true的时候才为true true and true => true
&& 当左右都为true的时候才为true true && true => true
or 当左右存在一个true的时候就为true true or false => true
not true变为false,false变为true True
! true变为false,false变为true ! false => true

逻辑运算符中,非的优先级最大,与和或的优先级相同,自左向右运行。

实例:

> true || false and !false
=> true

如果想要自定义组合条件,需要使用括号()

实例:

> (false || false) && (false || true)
=> false

> false || false && false || true
=> true

Ruby 条件语句 章节学习后,逻辑运算符才会大展身手。在今后接手的每一个项目之中,都会充斥着无数的逻辑运算。

4. 小结

本章中我们了解了什么是布尔值,在 Ruby 中布尔值的 true 和 false 分别所属 TrueClass 和 FalseClass。false和 nil 是真正的 false,而其他均为 true。知道了带问号的方法只返回 true 或者 false 的约定规则。学习了 与或非 的逻辑运算。

本文来自互联网用户投稿,不拥有所有权,该文观点仅代表作者本人,不代表本站立场。
访问者可将本网站提供的内容或服务用于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律的规定,不得侵犯本网站及相关权利人的合法权利。
本网站内容原作者如不愿意在本网站刊登内容,请及时通知本站,邮箱:80764001@qq.com,予以删除。
© 2023 PV138 · 站点地图 · 免责声明 · 联系我们 · 问题反馈