Groovy集合类型
发布时间:2020-12-14 16:46:05 所属栏目:大数据 来源:网络整理
导读:Groovy中有3种集合类型,分别是列表List、映射Map、区间Range 1、列表 List的初始化,直接在 [ ] 中直接写入初始的数据即可 def list1 = [1,2,3] List支持的运算符和方法: def list2 = list1 * 2 // [1,3,1,3]list2.unique() // [1,3]list1.size() // 3list
Groovy中有3种集合类型,分别是列表List、映射Map、区间Range 1、列表List的初始化,直接在 [ ] 中直接写入初始的数据即可 def list1 = [1,2,3]List支持的运算符和方法: def list2 = list1 * 2 // [1,3,1,3] list2.unique() // [1,3] list1.size() // 3 list1.reverse() // [3,1] [1,4] + [5] // [1,4,5] [1,4] + 5 // [1,4] << [5] // [1,1] - [1] // [2,4] [1,1] - 1 // [2,[4,5]].flatten() // [1,4].max() // 4 [1,4].min() // 1 [1,1].count(1) // 2 [1,4].sum() // 10 [1,4].sort() // [1,4] def list2 = [[1,1],[2,2],[3,3]] list2*.unique() // [[1],[2],[3]] // *运算符,含义是依次对List每个元素调用*后面的方法 2、映射
创建Map,用key : value 的形式成对出现,初始化时的key默认会被当做字符串处理
def map = [key1: 'value1'] // 获得value1的值 map.key1 map['key1'] // 获得这个map的key,结果为key1 map.keySet()如果map的key是变量 def key = 'key123' def map1 = [(key): "MyBook"] // 需要用括号将key的变量括起来为初始化的map添加和删除key map1["newKey"] = "newValue" // 此时map1 就变成 ["key123":"MyBook","newKey":"newValue"] map1.remove("newKey") // 此时map1.newKey 结果为null 3、区间
区间的定义有两种形式,第一种为闭区间“起始..结束”;
另一种为左闭右开区间”起始..<结束“
def range1 = 1..5 // range1 长度是5,包含数字5 def range2 = 1..<5 // range2 长度是4,不包含数字5前置的*符号,可以把区间展开,用于构造List [* range1] // 结果为 [1,5]区间运用最常见的用法是用于循环和switch语句中 // 用于循环 def log = '' for(i in 1..5){ log += i } // 输出log的结果为'12345' // 用于switch循环 def score = 35 switch(score){ case 0..<60 : println 'not pass' break case 60..100 : println 'pass' } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |