我有一个如下记录(两组值)
record = [ [ name1:'value1', check:0.0, name2:'value2', name3:'value3' ],
[ name1:'value1', check:210.0, name2:'value4', name3:'value3' ],
[ name1:'value1', check:110.0, name2:'value4', name3:'value3' ] ]
有没有办法根据检查条件删除条目。 如果检查值为0,我想删除该条目,并希望只有条目具有检查值> = 1)
[ [ name1:'value1', check:210.0, name2:'value4', name3:'value3' ],
[ name1:'value1', check:110.0, name2:'value4', name3:'value3' ] ]
我试过
def recordNew = [:]
if (record.check.intValue() >= 1 ){
recordNew.put("name1",record.value1)
recordNew.put("name2",record.value2)
recordNew.put("name3",record.value3)
}
只持有一个条目
[ name1:'value1', check:110.0, name2:'value4', name3:'value3' ]
我也尝试了putAll,但似乎没有达到我的目的
答案 0 :(得分:0)
假设你的意思是:
record = [ [ name1:'value1', check:0.0, name2:'value2', name3:'value3'],
[ name1:'value1', check:210.0, name2:'value4', name3:'value3' ],
[ name1:'value1', check:110.0, name2:'value4', name3:'value3' ] ]
然后你可以这样做:
recordNew = record.findAll { it.check > 0 }
仅保留check
>这些条目0