В разделе «Программирование на Scala, второе издание» на странице 410 вы можете найти класс Simulation , который имеет следующий метод :
private def next() {
(agenda: @unchecked) match {
case item :: rest =>
agenda = rest
curtime = item.time
item.action()
}
}
Мне любопытно, почему Одерский реализовал это с сопоставлением с образцом, а не просто так:
private def next() {
val item = agenda.head
agenda = agenda.tail
curtime = item.time
item.action()
}
Насколько эффективно сопоставление с образцом, что оно вообще не имеет значения? Или это был не такой идеальный пример?