Groovy之使用小结

一、列表操作

1、列表的定义

列表list是object的有序集合,list中的元素的数据类型可以不一样

def list = [1,2,3,4]    //groovy
def list =new ArrayList()   //java

2、数组的定义方式

数组是一个同一类型数据的有限集合

def array = [1,2,3] as int[]   //groovy
int[] array1 = [1,2,3,4]   //java

3、列表的增删改查(数组与列表操作方法相同)

3.1 List的添加操作

①add方法

def list = [1]
list.add(2)  //[1,2]

②leftshift方法(等价于使用<< ,在列表尾部增加元素)

def list = [1]
list.leftshift(3)    //[1,3]

③使用<<运算添加元素

def list = [1]
list << 4    //[1,4]

④使用+运算添加元素,产生一个新的列表

def list = [1]
def list_new = list + 8   

3.2 List的删除操作

①remove,根据索引删除指定元素

def LIST = [1,2,-3,4,-5]
LIST.remove(2)   //[1,2,4,-5]

②removeAll,借助闭包移除符合条件的元素

LIST.removeAll{return  it % 2 == 0}

3.3 List的排序操作

①sort,默认升序

def list = [1,2,-3,4,-5]
list.sort()   //[-5,-3,1,2,4]
//等价于
def newlist = list.sort {a,b -> return a.compareTo(b)}

②降序

def list = [1,2,-3,4,-5]
def newlist = list.sort {a,b -> return b.compareTo(a)}

3.4 List的查找操作

①find方法(find找出的是第一个符合条件的元素)

def findList = [1,2,-3,4,-5]
int result = findList.find{return  it % 2 == 0}

②findAll(返回所有结果,保存为ArrayList)

def findList = [1,2,-3,4,-5]
ArrayList result = findList.findAll{return  it % 2 == 0}

③最大值、最小值

def findList = [1,2,-3,4,-5]
def min = findList.min()
def max = findList.max()

3.5 List的格式转换

①字符串转列表(不包含[{}])

def str = " [1,2,-3,4,-5] "
def  str2list = Eval.me(str)   //若数据类型改变,Eval容易失败,推荐使用JsonSlurper

//josn反序列化,groovy提供了JsonSlurper
import groovy.json.JsonSlurper
def jsonslurper = new JsonSlurper()
def str2list = jsonslurper.parseText(str)

//tokenize
assert "[a,b,c]".tokenize(',[]') == [a,b,c]

②列表转字符串

def findList = [1,2,-3,4,-5]
String list2str = findList.toString()
//json序列化,groovy提供了JsonOutput
def json = JsonOutput.toJson(findList)

二、范围

1、range的定义方式

def range = 1..10   //表示1~10

2、groovy中的常用方法

①取值

range[0]

②contains方法

range.contains(2)   //返回布尔类型

③from方法取范围上边界

range.from

④to方法取范围上边界

range.to

3、遍历

range.each{
    println it
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容