val fruits = List("apple", "banana", "avocado", "papaya") val countsToFruits = // count how many 'a' in each fruit fruits.groupBy(fruit => fruit.count(_ == 'a')) for (count, fruits) <- countsToFruits do println(s"with 'a' × $count = $fruits") // prints: with 'a' × 1 = List(apple) // prints: with 'a' × 2 = List(avocado) // prints: with 'a' × 3 = List(banana, papaya)
![The Scala Programming Language](https://cdn-ak-scissors.b.st-hatena.com/image/square/2a8587d2b50fab0c1481c7a3c0bf038c0d8d9392/height=288;version=1;width=512/https%3A%2F%2Fwww.scala-lang.org%2Fresources%2Fimg%2Fscala-spiral-3d-2-toned-down.png)