0
case class DataItem(name: String, timestamp: Long, value: String)
val dataitems = List(DataItem(SpindleSpeed, 1223334444, 20.3333),
DataItem(SpindleSpeed, 1223334450, 21.3333),
DataItem(SpindleSpeed, 1223334460, 19.3333),
DataItem(Load, 1223334444, 70.0023),
DataItem(Load, 1223334446, 72.0023),
DataItem(Pressure, 1223334444, 20.3333))
我有一個像這樣的列表,我需要篩選出具有最低值的數據項timestamp
。可以有多個具有相同時間戳的日期項,在這種情況下,我需要所有這些數據項。從列表中篩選最小值
在上述情況下,我希望過濾列表是
List(DataItem(SpindleSpeed, 1223334444, 20.3333),
DataItem(Load, 1223334444, 70.0023),
DataItem(Pressure, 1223334444, 20.3333))
什麼是做它的功能呢?我嘗試整理列表並返回頭部。但是,這隻會返回一個似乎不正確的單個數據項。
如果你這樣做了很多,你可能會對通用方法感興趣,你可以稱之爲'multiMinBy(dataitems)(_。timestamp)'。請參閱http://stackoverflow.com/q/8235462/770361上的接受答案。這可能比你需要的更通用;你可能想簡化它,直接返回List [A](而不是任何集合類型)。 –