groovy - 查找集合中与某个标准匹配的最后一个值,但是如果我想要最后一个值呢?
问题描述
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
解决方案
如何使用reverse()
:
def created = changeHistoryManager.getChangeItemsForField(issue, "status").reverse().find {
it.toString() == "SIT Done"
}?.created
推荐阅读
- javascript - React setState:多个回调是否同步?
- ios - 如何使用 iOS-Charts 创建具有多个 labelTextColor YAxis 的 LineChartView
- android - 如何使用 Kotlin 在 Android 上的 Apollo GraphQL 中创建 JSON CustomTypeAdapter
- azure - Azure Blob 存储 SDK:关闭日志记录
- python - 如何从路线中找到一个位置的最短距离(Python),
- perl - perl 使用评估修饰符在字符串中增加数字
- continuous-integration - 来自 Go CI/CD 的 Gitlab 连接
- opencv - Unity3D中如何检测人体
- cpu-architecture - 变量分配和 RAM
- javascript - 使用 JavaScript 且不使用 PostBack() 的用户控件 (ascx) 中的 SET 父页面 (aspx) 标签文本