Groovy<第三篇>:基础语法(2)

2020-05-06  本文已影响0人  NoBugException

Groovy 运算符

运算符是一个符号,通知编译器执行特定的数学或逻辑操作。

Groovy运算符包括:算术运算符关系运算符逻辑运算符位运算符赋值运算符

[算术运算符]

运算符 描述 例子
+ 两个操作数的加法 1 + 2 将得到 3
- 第一第二操作数相减 2 - 1 将得到 1
* 两个操作数的乘法 2 * 2 将得到4
/ 两个操作数的除法 2 * 2 将得到4
取模运算 3%2 将得到 1
++ 自增运算,在自身值的基础上加1 int x = 5; x++; x 将得到 6
-- 自减运算,在自身值的基础上减1 int x = 5; x- -; x 将得到 4

[关系运算符]

运算符 描述 例子
== 判断两个对象之间是否相等 2 == 2 将得到 true
!= 判断两个对象之间是否不等 3 != 2 将得到 true
< 检查是否左边的数字是小于右边的数字 2 < 3 将得到 true
<= 检查是否向左数字是小于或等于右边的数字 2 <= 3 将得到 true
> 检查是否左边的数字比右边的数字大 3 > 2 将得到 true
>= 检查是否向左对象大于或等于右边的对象 3>= 2 将得到 true

[逻辑运算符]

运算符 描述 例子
&& 逻辑“与”运算 true && true 得到 true
¦¦ 逻辑“或”运算 true ¦¦ true 得到 true
逻辑“非”运算 !true 得到 false

[位运算符]

运算符 描述
位“与”运算
¦ 按位“或”运算
^ 按位“异或”运算符
~ 这是按位反运算符

[赋值运算符]

运算符 描述 例子
+= A += B 等价于 A = A+B def A = 5 A += 3 输出将是8
-= A -= B 等价于 A = A-B def A = 5 A -= 3 输出将是2
*= A = B 等价于 A= AB def A = 5 A *= 3 输出将是15
/= A /= B 等价于 A = A/B def A = 6 A /= 3 输出将是2
%= A %= B 等价于 A = A % B def A = 5 A %= 3 输出将是2

[范围运算符]

运算符 描述 例子
.. 用于表示范围 0..5
    def range = 1..6
    //打印范围
    println(range);
    //打印范围内角标为2的数字
    println(range.get(2));

打印结果是:

1..6
3 

[运算符优先级]

Groovy的四则运算和其它语言一样,底层都是用逆波兰表达式运算的。运算符的优先级如下:

运算符 名称
++ - + - 预增/减,一元加,一元减
* / % 乘法,除法,取模
* - 加法,减法
== != <=> 等于,不等于,比较
二进制/位运算符与
^ 二进制/位异或
¦ 二进制/按位或
&& 逻辑和
¦¦ 逻辑或
=,以及其它 各种赋值运算符

Groovy 循环

for循环

    for(def index = 0; index < 10; index++){
        println index
    }

for死循环

    def index = 0;
    for(;;){
        println index++
    }

while循环

    def index = 0;
    while (index < 10){

        index += 1;

        println index
    }

while死循环

    def index = 0;
    while (true){
        println index++
    }

do...while循环

    def index = 0;
    do{

        index += 1;

        println index
    } while (index < 10)

for...in循环

    def range = [5, 6, 7, 8, 9, 10]
    def range = 5..10
    for(def index in range){
        println index
    }

Groovy 循环控制语句

break语句用于改变循环和switch语句内的控制流。

    def range = 5..10
    for(def index in range){
        println index
        if(index == 7){
            //跳出for循环
            break;
        }
    }
    def flag = 2;
    switch (flag){
        case 1:
            break
        case 2:
            break
        case 3:
            break
        default:
            break
    }

continue语句补充了break语句。它的使用仅限于while和for循环。

    def range = 5..10
    for(def index in range){
        if(index < 7){
            //结束本次循环,立即进入下一次循环
            continue;
        }
        println index
    }

Groovy 条件判断语句

if...else,和Java语言一样。

[本章完...]

上一篇下一篇

猜你喜欢

热点阅读