Я понимаю, как использовать reduLeft в простых списках целых чисел, но пытаюсь использовать, если в случае объектов класса не удается.
Предположим, у меня есть:
case class LogMsg(time:Int, cat:String, msg:String)
val cList = List(LogMsg(1,"a", "bla"), LogMsg(2,"a", "bla"), LogMsg(4,"b", "bla"))
и я хочу найти наибольшую разницу во времени между LogMsgs.
Я хочу сделать что-то вроде:
cList.reduceLeft((a,b) => (b.time - a.time)
что, конечно, не работает.
Первая итерация ReduceLeft сравнивает первые два элемента, оба из которых имеют тип LogMsg. После этого он сравнивает следующий элемент (LogMsg) с результатом первой итерации (Int).
У меня просто неправильный синтаксис или я должен делать это по-другому?