Это то, что я делаю прямо сейчас:Каков самый быстрый способ проверить, все ли элементы «Seq» имеют размер 1 в Scala Set?
val foo = Set[Seq[Int]](Seq(1), Seq(2), Seq(3))
val isAllSizeOne = foo.foldLeft(true) { case (agg, curr) => agg && curr.size == 1}
Могу ли я получить быстрее, чем это?
В частности, 'lengthCompare' быстро подходит для последовательностей, которые не знают своего собственного размера, например' List', так как он может выпустить раннее, а не считать все, если находит более одного элемента. Для последовательностей, которые знают свою собственную длину, для этого требуется дополнительная логика, которая надеется, что JVM в конечном итоге оптимизируется. (Обычно это по моему опыту, по крайней мере, в сильно используемых кодах, которые мне очень нравятся.) –