您的位置:首页 > 编程语言 > Ruby

ruby-运算符

2016-03-13 21:04 375 查看
ruby中的运算符种类和功能跟Java中的差不多,个别不同。
a + b
被解释为 a.+(b),其中指向变量 a 的 + 方法被调用,b 作为方法调用的参数。

1.1 算数运算符

加减乘除余(
+
-
*
/
%
)和指数(
**
)。指数运算符前面也说过,A**B代表A的B次方,B不必为整数。

1.2 比较运算符l

==、!=、>、<、>=、<=、<=>、===、.eql?、equal?

介绍一下与Java不同的。假设a=10,b=20。

运算符描述实例
<=>联合比较运算符。如果第一个操作数等于第二个操作数则返回 0,如果第一个操作数大于第二个操作数则返回 1,如果第一个操作数小于第二个操作数则返回 -1。(a <=> b) 返回 -1
===用于测试 case 语句的 when 子句内的相等。(1…10) === 5 返回 true
.eql?如果接收器和参数具有相同的类型和相等的值,则返回 true。1 == 1.0 返回 true,但是 1.eql?(1.0) 返回 false
.equal?如果接收器和参数具有相同的对象id,则返回 true。如果 aObj 是 bObj 的副本,那么 aObj == bObj 返回 true,a.equal?bObj 返回 false,但是 a.equal?aObj 返回 true。

1.3 赋值运算符

=、+=、-=、/=、%=、**=

1.4 并行赋值

a = 10
b = 20
c = 30


可改成:

a, b, c = 10, 20, 30


可以交换值:

a, b = b, c #相当于a=b,b=c


1.5 位运算符

1.6 逻辑运算符

假设变量 a 的值为 10,变量 b 的值为 20,那么:

运算符 描述 实例

and 称为逻辑与运算符。如果两个操作数都为真,则条件为真。 (a and b) 为真。

or 称为逻辑或运算符。如果两个操作数中有任意一个非零,则条件为真。 (a or b) 为真。

&& 称为逻辑与运算符。如果两个操作数都非零,则条件为真。 (a && b) 为真。

|| 称为逻辑或运算符。如果两个操作数中有任意一个非零,则条件为真。 (a || b) 为真。

! 称为逻辑非运算符。用来逆转操作数的逻辑状态。如果条件为真则逻辑非运算符将使其为假。 !(a && b) 为假。

not 称为逻辑非运算符。用来逆转操作数的逻辑状态。如果条件为真则逻辑非运算符将使其为假。

1.7 三元运算符

跟Java一致。
? :
如果条件为真 ? 则值为 X : 否则值为 Y。

1.8 defined? 运算符

defined? 是一个特殊的运算符,以方法调用的形式来判断传递的表达式是否已定义。它返回表达式的描述字符串,如果表达式未定义则返回 nil。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: