【发布时间】:2020-06-01 00:46:30
【问题描述】:
我只是想在下面的代码中删除 var 并改用 Val
def getConfigId: Long = {
val object1: java.util.List[objectA] = objectRepo.findByUser(User(session.id))
var object2: objectA = null
if (object1.size() == 1) {
object2 = object1.get(0)
} else if (object1.size() > 1) {
object2 = object1.get(0)
object1.forEach(a => if (a.endDate.compareTo(object2.endDate) >= 0) {
object2 = a
})
}
object2.configId
}
我正在尝试使用大小写匹配,但它不起作用
def getConfigId: Long = {
val object1: java.util.List[objectA] = objectRepo.findByUser(User(session.id))
val object2: objectA = {
case x if object1.size() == 1 => object1.get(0)
case x => if (object1.size() > 1) {
object1.get(0)
object1.forEach(a => if(a.endDate.compareTo(object2.endDate) >= 0) {
object2 = a
})
}
【问题讨论】:
-
val object2: objectA = object1.findLast(_.endDate.compareTo(object1.get(0).endDate >= 0)) -
@jwvh 感谢您的回复,但我从 esse 得到了解决方案
标签: java scala if-statement collections functional-programming