Groovy运算符重载
[原文](http://www.cnblogs.com/rollenholt/archive/2013/10/02/3349047.html)
| Operator | Method | |||
|---|---|---|---|---|
| a + b | a.plus(b) | |||
| a-b | a.minus(b) | |||
| a * b | a.multiply(b) | |||
| a ** b | a.power(b) | |||
| a / b | a.div(b) | |||
| a % b | a.mod(b) | |||
| a | b | a.or(b) | ||
| a & b | a.and(b) | |||
| a ^ b | a.xor(b) | |||
| a++ or ++a | a.next() | |||
| a– or –a | a.previous() | |||
| a[b] | a.getAt(b) | |||
| a[b] = c | a.putAt(b, c) | |||
| a << b | a.leftShift(b) | |||
| a >> b | a.rightShift(b) | |||
| switch(a) { case(b) : } | b.isCase(a) | |||
| ~a | a.bitwiseNegate() | |||
| -a | a.negative() | |||
| +a | a.positive() |
另外需要注意的是下面的所有的操作符,在遇到null的时候,都不会抛出java.lang.NullPointerException