headers 是一个从文件填充的数组。当我打印标题时,我得到:
headers = ["The Year", , , "The Make", "The Model"]
我试图用来headers.remove(' ')
摆脱这两个只是空格的单元格。它不会使用该语法运行或编译,而且我找不到我做错了什么。我已经测试过:
def list1 = ['j', 2, 3, 4]
list1.remove('j')
它工作得很好。我无法弄清楚我做错了什么。
假设这["The Year", , , "The Make", "The Model"]
实际上是列表的 toString 表示
groovy:000> ["The Year", , , "The Make", "The Model"]
ERROR org.codehaus.groovy.control.MultipleCompilationErrorsException:
startup failed:
groovysh_parse: 1: unexpected token: , @ line 1, column 14.
["The Year", , , "The Make", "The Model"]
^
groovy:000> ['"The Year"', '', '', '"The Make"', '"The Model"']
===> ["The Year", , , "The Make", "The Model"]
我认为headers.remove(' ')
不起作用,因为元素实际上不是空格,它们是空的。我不确定为什么headers.remove('')
不起作用,除非您需要使用headers.removeAll('')
.
更好的选择是使用类似headers.findAll { it.trim() != '' }
.