gpt4 book ai didi

arrays - Groovy:从其自身的列表中删除和对象?

转载 作者:行者123 更新时间:2023-12-02 06:43:43 24 4
gpt4 key购买 nike

当发现特定对象时,我正在尝试从列表中删除对象 privacy对当前用户是私有(private)的

     books.eachWithIndex{ obj, i ->

if((obj.book.private).equals(true)){

def status = bookService.getBookStatus(obj.book)

if(!status){
books.remove(i)
}
}
}

尝试移除对象时抛出错误

错误 errors.GrailsExceptionResolver - nulljava.util.ConcurrentModificationException

问:有什么方法可以从列表中删除对象本身或者您是否必须单独存储索引值并从每个循环外部删除对象?

最佳答案

更实用的方法可能会有所帮助:

def publicBooks = books.findAll { obj ->
!obj.book.isPrivate() || bookService.getBookStatus(obj.book)
}

请注意,findAll() 返回一个 集合,而不是修改现有集合。

关于arrays - Groovy:从其自身的列表中删除和对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3938431/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com