15

我需要修剪 groovy 或 grails 列表中的所有元素吗?什么是最好的解决方案

4

2 回答 2

20

假设它是一个字符串列表并且您想要修剪每个字符串,您可以使用扩展运算符(*.)

list = [" abc ", " xyz "]
list*.trim()
于 2012-07-06T05:14:42.607 回答
14

您可以使用 collect 方法或扩展运算符创建一个包含修剪元素的新列表:

def strs = ['a', ' b', ' ']
assert strs.collect { it.trim() } == ['a', 'b', '']
assert strs*.trim() == ['a', 'b', '']

在这些情况下,原始列表不会被修改。如果要在适当的位置修剪字符串,则需要使用索引遍历列表:

for (i in 0..<strs.size()) {
    strs[i] = strs[i].trim()
}
于 2012-07-06T05:28:37.407 回答