Предыдущая часть — Groovy: часть 4 – переменные.
Оператор — специальный символ, который указывает компилятору на выполнение математических или логиеских операций.
В Groovy имеются следующие типы операторов:
- арифметические
- операторы сравнения
- логические
- побитовые операторы
- операторы присваивания
Содержание
Арифметические операторы
В Groovy, как и в любом другом языке программирвоания, имеются арифметические операторы:
| Operator | Description | Example |
|---|---|---|
| + | Addition of two operands | 1 + 2 will give 3 |
| − | Subtracts second operand from the first | 2 − 1 will give 1 |
| * | Multiplication of both operands | 2 * 2 will give 4 |
| / | Division of numerator by denominator | 3 / 2 will give 1.5 |
| % | Modulus Operator and remainder of after an integer/float division | 3 % 2 will give 1 |
| ++ | Incremental operators used to increment the value of an operand by 1 | int x = 5;
x++; x will give 6 |
| — | Incremental operators used to decrement the value of an operand by 1 | int x = 5;
x—; x will give 4 |
Операторы сравнения
Операторы сравнения позволяют выполнять сравнение объектов:
| Operator | Description | Example |
|---|---|---|
| == | Tests the equality between two objects | 2 == 2 will give true |
| != | Tests the difference between two objects | 3 != 2 will give true |
| < | Checks to see if the left objects is less than the right operand. | 2 < 3 will give true |
| <= | Checks to see if the left objects is less than or equal to the right operand. | 2 <= 3 will give true |
| > | Checks to see if the left objects is greater than the right operand. | 3 > 2 will give true |
| >= | Checks to see if the left objects is greater than or equal to the right operand. | 3 >= 2 will give true |
Логические операторы
Логические операторы используются для вычисления булиевых (True/False) значений:
| Operator | Description | Example |
|---|---|---|
| && | This is the logical “and” operator | true && true will give true |
| || | This is the logical “or” operator | true || true will give true |
| ! | This is the logical “not” operator | !false will give true |
Побитовые операторы
Groovy предоставляет четыре побитовых оператора:
| Operator | Description |
|---|---|
| & | This is the bitwise “and” operator |
| | | This is the bitwise “or” operator |
| ^ | This is the bitwise “xor” or Exclusive or operator |
| ~ | This is the bitwise negation operator |
Операторы присваивания
Groovy так же позволяет использование операторов присваивания:
| Operator | Description | Example |
|---|---|---|
| += | This adds right operand to the left operand and assigns the result to left operand. | def A = 5
A+=3 Output will be 8 |
| -= | This subtracts right operand from the left operand and assigns the result to left operand | def A = 5
A-=3 Output will be 2 |
| *= | This multiplies right operand with the left operand and assigns the result to left operand | def A = 5
A*=3 Output will be 15 |
| /= | This divides left operand with the right operand and assigns the result to left operand | def A = 6
A/=3 Output will be 2 |
| %= | This takes modulus using two operands and assigns the result to left operand | def A = 5
A%=3 Output will be 2 |
Операторы диапазона
Среди прочего — Groovy поддерживает концепцию диапазонов и предоставляет объявление операторов диапазона с помощью оператора «..".
Простой пример использования такого оператора выглядит так:
groovy:000> def range = 0..5 ===> [0, 1, 2, 3, 4, 5]
Тут определяется простой диапазон чисел, которые хранятся в переменной с именем range, который начинается с нуля и заканчивается 5.
Пример использования:
class Example {
static void main(String[] args) {
def range = 5..10;
println(range);
println(range.get(2));
}
}
Результат:
$ ./example.groovy [5, 6, 7, 8, 9, 10] 7
Приоритеты операторов
Ниже предоставлен список приоритетов операторов в Groovy, от наивысшего — к самому низкому:
| Operators | Names |
|---|---|
| ++ — + — | pre increment/decrement, unary plus, unary minus |
| * / % | multiply, div, modulo |
| + — | addition, subtraction |
| == != <=> | equals, not equals, compare to |
| & | binary/bitwise and |
| ^ | binary/bitwise xor |
| | | binary/bitwise or |
| && | logical and |
| || | logical or |
| = **= *= /= %= += -= <<= >>= >>>= &= ^= |= | Various assignment operators |
Продолжение — часть 6 – циклы.





16 402 views