Operatior
|
Description
|
Example |
| +
|
Add |
a + b will
give 30 |
| −
|
Subtract |
a - b will
give -10 |
| *
|
Multiply |
a * b will
give 200 |
| /
|
Divide |
b / a will
give 2 |
| %
|
Modulus − Get
Remainder |
b % a will
give 0 |
| **
|
Exponent −
Power |
a**b will
give 10 to the power 20 |
| = |
Simple
assignment operator, assigns values from right side operands to
left side operand. |
c = a + b
will assign the value of a + b into c |
| +=
|
Add AND
assignment operator, adds right operand to the left operand and
assign the result to left operand. |
c += a is
equivalent to c = c + a |
| -=
|
Subtract AND
assignment operator, subtracts right operand from the left operand
and assign the result to left operand. |
c -= a is
equivalent to c = c - a |
| *=
|
Multiply AND
assignment operator, multiplies right operand with the left
operand and assign the result to left operand. |
c *= a is
equivalent to c = c * a |
| /=
|
Divide AND
assignment operator, divides left operand with the right operand
and assign the result to left operand. |
c /= a is
equivalent to c = c / a |
| %=
|
Modulus AND
assignment operator, takes modulus using two operands and assign
the result to left operand. |
c %= a is
equivalent to c = c % a |
| **=
|
Exponent AND
assignment operator, performs exponential (power) calculation on
operators and assign value to the left operand. |
c **= a is
equivalent to c = c ** a |
| = |
Simple
assignment operator, assigns values from right side operands to
left side operand. |
c = a + b
will assign the value of a + b into c |
| +=
|
Add AND
assignment operator, adds right operand to the left operand and
assign the result to left operand. |
c += a is
equivalent to c = c + a |
| -=
|
Subtract AND
assignment operator, subtracts right operand from the left operand
and assign the result to left operand. |
c -= a is
equivalent to c = c - a |
| == |
Checks if the
value of two operands are equal or not, if yes then condition
becomes true. |
(a == b) is
not true. |
| === |
Used to test
equality within a when clause of a case statement. |
(1...10) ===
5 returns true. |
| !=
|
Checks if the
value of two operands are equal or not, if values are not equal
then condition becomes true. |
(a != b) is
true. |
| >
|
Checks if the
value of left operand is greater than the value of right operand,
if yes then condition becomes true. |
(a > b) is
not true. |
| <
|
Checks if the
value of left operand is less than the value of right operand, if
yes then condition becomes true. |
(a < b) is
true. |
| >=
|
Checks if the
value of left operand is greater than or equal to the value of
right operand, if yes then condition becomes true. |
(a >= b)
is not true. |
| <=
|
Checks if the
value of left operand is less than or equal to the value of right
operand, if yes then condition becomes true. |
(a <= b)
is true. |
| <=>
|
Combined
comparison operator. Returns 0 if first operand equals second, 1
if first operand is greater than the second and -1 if first
operand is less than the second. |
(a <=>
b) returns -1. |
| .eql?
|
True if the
receiver and argument have both the same type and equal values. |
1 == 1.0
returns true, but 1.eql?(1.0) is false. |
| equal?
|
True if the
receiver and argument have the same object id. |
if aObj is
duplicate of bObj then aObj == bObj is true, a.equal?bObj is false
but a.equal?aObj is true. |
| => |
Hashmap
literal definition |
key1 =>
value1 |
| &
|
Binary AND
Operator copies a bit to the result if it exists in both operands.
|
(a & b)
will give 12, which is 0000 1100 |
| |
|
Binary OR
Operator copies a bit if it exists in either operand. |
(a | b) will
give 61, which is 0011 1101 |
| ^
|
Binary XOR
Operator copies the bit if it is set in one operand but not both.
|
(a ^ b) will
give 49, which is 0011 0001 |
| ~
|
Binary Ones
Complement Operator is unary and has the effect of 'flipping'
bits. |
(~a ) will
give -61, which is 1100 0011 in 2's complement form due to a
signed binary number. |
| <<
|
Binary Left
Shift Operator. The left operands value is moved left by the
number of bits specified by the right operand. |
a << 2
will give 240, which is 1111 0000 |
| >>
|
Binary Right
Shift Operator. The left operands value is moved right by the
number of bits specified by the right operand. |
a >> 2
will give 15, which is 0000 1111 |
| ?
: |
Conditional
Expression |
If Condition
is true ? Then value X : Otherwise value Y |
| ..
|
Creates a
range from start point to end point inclusive. |
1..10 Creates
a range from 1 to 10 inclusive. |
| ...
|
Creates a
range from start point to end point exclusive. |
1...10
Creates a range from 1 to 9. |
| =~ |
matches a
String against a regular expression, returns the position/index if
found else nil |
"Hello World"
=~ /Wo/ |
| !~ |
'Does not
contain� |
"Hello World"
!~ /Mo/ |