Groovy集合类型

本文介绍了Groovy中的三种集合类型:列表(List)、映射(Map)和区间(Range)。详细解释了每种类型的使用方法及支持的操作,如列表的初始化、运算符、方法等,并通过示例展示了如何操作这些集合。
摘要由CSDN通过智能技术生成

Groovy中有3种集合类型,分别是列表List、映射Map、区间Range

1、列表

List的初始化,直接在 [ ] 中直接写入初始的数据即可

def list1 = [1,2,3]
List支持的运算符和方法:

def list2 = list1 * 2    // [1,2,3,1,2,3]
list2.unique()           // [1,2,3]
list1.size()             // 3
list1.reverse()          // [3,2,1]
[1,2,3,4] + [5]          // [1,2,3,4,5]
[1,2,3,4] + 5            // [1,2,3,4,5]
[1,2,3,4] << [5]         // [1,2,3,4,5]
[1,2,3,4,1] - [1]        // [2,3,4]
[1,2,3,4,1] - 1          // [2,3,4]
[1,2,3,[4,5]].flatten()  // [1,2,3,4,5]
[1,2,3,4].max()          // 4
[1,2,3,4].min()          // 1
[1,2,3,4,1].count(1)     // 2
[1,2,3,4].sum()          // 10
[1,3,2,4].sort()         // [1,2,3,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,2,3,4,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'
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值