1. List 的使用
a) java.util.List
b) 不需要 import
def roman = ['', 'I', 'II', 'III'] // 定义 List
assert roman.class == ArrayList.class // List 就是 ArrayList
assert roman.size() == 4
assert roman[3] == 'III' // 得到 List 在 index 上的值
roman[5] = 'V' // 直接扩展
assert roman[4] == null // 没有值的 index 为 null
assert roman[5] == 'V'
assert roman.size == 6
2. Map 的使用
a) java.util.Map
b) 不需要 import
def http = [
100 : 'CONTINUE',
200 : 'OK',
400 : 'BAD REQUEST' ]
assert http.getClass() == LinkedHashMap.class // Map 的类型
assert http[200] == 'OK' // 使用 key 获得 value
assert http.size() == 3
http[500] = 'WOW' // 添加一个 key-value
assert http[500] == 'WOW'
11 .范围 Ranges
a) 整数范围
def x = 1..10
println x.class // class groovy.lang.IntRange
assert x.contains(5)
assert x.contains(15) == false
assert x.size() == 10
assert x.from == 1
assert x.to == 10
assert x.reverse() == 10..1
b) 字符范围
def y = 'a'..'c'
println y.class // class groovy.lang.ObjectRange
c) 包含
def x = 1..10 // 从 1 到 10 ,包含 10
assert x.size() == 10
d) 不包含
def x = 1..<10 // 从 1 到 10 ,不包含 10
assert x.size() == 9