首页 > 解决方案 > 查找集合中与某个标准匹配的最后一个值,但是如果我想要最后一个值呢?

问题描述

find 方法在集合中找到一个匹配某个标准的值。

但我想在集合中找到匹配某个标准的最后一个值。

有没有其他方法可以做?

如果没有,我该怎么办?

因为在 Jira,我想要一个字段显示状态更改为“SIT Done”的最后日期

但是使用代码,它只是获得第一个日期。我不知道如何编辑代码以显示最后日期。

有人可以告诉我吗?

下面是我的代码

import com.atlassian.jira.component.ComponentAccessor


def changeHistoryManager = ComponentAccessor.getChangeHistoryManager()
def created = changeHistoryManager.getChangeItemsForField(issue, "status").find { 
    it.toString == "SIT Done"
}?.getCreated()

def createdTime = created?.getTime()

createdTime ? new Date(createdTime).format("yyyy/MM/dd HH:mm") : null

标签: groovyjira

解决方案


如何使用reverse()

def created = changeHistoryManager.getChangeItemsForField(issue, "status").reverse().find { 
    it.toString() == "SIT Done"
}?.created

推荐阅读