Scala 在列表中搜索具有相同日期的对象
我正在使用find、find with pattern matching、filter、foldLeft(以及使用Joda实现日期相等)搜索列表 我需要搜索对象列表并查找与不同对象具有相同日期的匹配项Scala 在列表中搜索具有相同日期的对象,scala,Scala,我正在使用find、find with pattern matching、filter、foldLeft(以及使用Joda实现日期相等)搜索列表 我需要搜索对象列表并查找与不同对象具有相同日期的匹配项 case class DD(time: Date, value: Double) case class UT(time: Date, name: String, value: Double) 给出一个UT列表 var sdf = new SimpleDateFormat("yyyy-MM-dd"
case class DD(time: Date, value: Double)
case class UT(time: Date, name: String, value: Double)
给出一个UT列表
var sdf = new SimpleDateFormat("yyyy-MM-dd")
var utList = Seq(UT(sdf.parse("2012-02-11"), "adf", 1), UT(sdf.parse("2012-02-13"), "adf", 2),UT(sdf.parse("2012-02-16"), "addf", 3)
查找具有匹配DD.time的所有UT的最有效方法
或者,更好的是,将列表拆分为两个子列表,其中一个列表不包含匹配项,另一个列表包含具有匹配DD.time的UT?我想我遗漏了一些内容,但是
val (matchingDate, notMatchingDate) =
utList partition {_.time == sdf.parse("2012-02-13")}
如果您只有一个DD
实例someDd
:
utList partition {_.time == someDd.time}
使用utList.filter(ut=>ut.time==dd.time)
获取所有匹配的时间
使用utList.partition(ut=>ut.time==dd.time)
进行分区
鉴于dd是dd的一个实例。我不清楚“匹配dd.time”是什么意思。您是否有DD
的实例,并且希望UT
s带有机器time
字段?