从另一个列表生成一个列表,转换Groovy上的每个元素
发布时间:2020-12-14 16:33:54 所属栏目:大数据 来源:网络整理
导读:我在控制器上有以下代码 def db = new Sql(dataSource) def rawLines = db.rows("SELECT name FROM LINES") def lines = [] /*(db.rows returns the values as [NAME:value] */ rawLines.each { lines.add(it.name) } /*Then,use lines */ 我不能忽略这样一
我在控制器上有以下代码
def db = new Sql(dataSource) def rawLines = db.rows("SELECT name FROM LINES") def lines = [] /*(db.rows returns the values as [NAME:value] */ rawLines.each { lines.add(it.name) } /*Then,use lines */ 我不能忽略这样一种印象:可能有一些方法可以以更优雅的方式进行,类似于Python中的列表解析: lines = [ l.name for l in db.rows("SELECT name FROM LINES") ] 不得不声明一个空的列表,然后填充它似乎是最好的做事方式… 解决方法
你不能只使用传播操作符,并且做:
lines = rawLines*.name (见http://docs.groovy-lang.org/latest/html/documentation/index.html#_spread_operator) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |