Filtro Scala Vs Java Collection

Um dos melhores recursos do scala é para loops de compreensão. Eles permitem que você expresse o resultado esperado do loop e manipule Seq, List e outras coleções de uma forma que economize tempo e remova a desordem de sua contraparte Java.

Considere o seguinte…

JAVA

List<Integer> even = new ArrayList<Integer>();
for (String num : strings) {
int parsedInt = Integer.parseInt(num);
if (parsedInt % 2 == 0) {
ints
.add(parsedInt);
}
}

Scala

val ints = for (num <- strings; if num.toInt % 2 == 0) yield num.toInt

ou ainda mais fácil

val ints = strings map { _.toInt } filter {_ % 2 == 0}