三元(或条件)运算符将对表达式求值,如果为true,则返回一个值,如果为false,则返回另一个值。这有点像一个简捷、紧凑的if语句。
Ruby的三元运算符有它的用途,但也有一些争议。
让我们看看这个例子:
这里,条件运算符用于在两个字符串之间进行选择。整个运算符表达式包括所有内容,包括条件、问号、两个字符串和冒号。此表达式的一般格式如下:条件?对:错。
如果条件表达式为true,则运算符将作为true表达式计算。否则,它将作为假表达式计算。在本例中,它位于括号中,因此它不会干扰周围的字符串连接运算符。
换句话说,条件运算符类似于if语句。请记住,Ruby中的if语句计算为块中执行的最后一个值。因此,您可以这样重写前面的示例:
这段代码在功能上是等价的,可能更容易理解。如果i大于10,If语句本身将计算为字符串“大于”或字符串“小于或等于”。这与三元运算符所做的相同,只是三元运算符更紧凑。
那么,三元运算符有什么用途呢?它确实有用处,但用处不多,没有它你也可以过得很好。
它通常用于在条件语句过于庞大的情况下插入值。它还用于变量赋值,以便在两个值之间快速选择。
下面是三元运算符的两个典型用例:
您可能已经注意到,这看起来很不红宝石。Ruby的表达式通常是一行一行的,而不是一行的。但是,您将看到这个操作符,它可以有效地使用而不会失控。
要遵循的一条规则是,如果使用此运算符通过简单条件在两个值之间进行选择,则可以使用。如果您正在做一些更复杂的事情,那么可能应该使用If语句。
二元的(binary)和三元酸(ternary acids)的区别 酸是能够提供氢离子(H+)或与电子对(路易斯酸)形成共价键的化合物。酸有许多特性,如能将蓝色石蕊变成红色,中和碱性溶液等。大多数酸即使在低浓度下也具有腐蚀性。因此...
...殊结构的产物,还是它的创建者的一时兴起,PHP中的三元运算符都令人费解。考虑一下: ...
...eOf指南来使用静态站点生成器。在本指南中,我们将介绍什么是静态站点生成器(SSG),为什么要使用它,以及如何使用它构建一个全新的站点。我们将探讨的一些细节: ...
...。下面是两种流行脚本语言之间的一个简短的对比。 什么是python(python)? Python在20世纪80年代末作为Guido van Rossum的宠物项目开始,并于1989年12月在荷兰CWI正式实施。当时他开始研究一种新的脚本语言,其语法与ABC编程语言相...
...应而发生的行为模式奖励和结果。 本文将详细解释, 1.什么是操作性条件作用-BF斯金纳理论、基本原理、关键概念和结果 2.什么是经典条件作用-伊万·巴甫洛夫理论、基本原理和结果 3.经典条件作用和操作条件作用的区别 什么...
C++中new和Delphi运算符的主要区别在于new被用来为对象或数组分配内存,而DELATE用于释放使用新运算符分配的内存。 有两种类型的记忆作为静态和动态记忆。假设一个语句,比如int a;int数组[10];程序员已经知道这些变量需要多...
...统管理、网络编程、GUI和web开发等。 覆盖的关键领域 1.什么是Perl–定义,特性2.什么是Ruby–定义,特性3.Perl和Ruby的区别是什么–主要区别的比较 关键术语 OOP、Perl、Ruby 什么是perl语言(perl)? Perl代表实用的提取和报告语言。它...
...中。经典条件作用与操作条件作用的比较表(表格形式)什么是经典条件作用(classical conditioning)?经典条件作用是由一位名叫伊万·巴甫洛夫的俄罗斯生理学家首次提出的。这对心理学的行为主义分支产生了重大影响。巴甫洛夫...
...序观看屏幕播放,了解Ruby编程的各个方面,重点是gosu库中的游戏开发。这是一种有趣的方法来教你的孩子如何编程,如果你还不是Ruby专家,它甚至可以帮助你学习语言。Ruby For childs与Hakety-Hack(另一个很棒的Ruby学习资源)有几...
JavaScript中的条件三元运算符根据某些条件为变量赋值,是唯一接受三个操作数的JavaScript运算符。 三元运算符可替代if语句,其中if和else子句为同一字段指定不同的值,如下所示: if (condition)result = 'something';elseresult = 'somethi...