First Scala FizzBuzz implementation
Or if you prefer match/case to if/else:

(1 until 100).map(i =&gt; (i % 3, i % 5) match {
  case (0, 0) =&gt; "FizzBuzz"
  case (0, _) =&gt; "Fizz"
  case (_, 0) =&gt; "Buzz"
  case _ =&gt; i
}).foreach(println)


Update:

So what we are doing here is taking list of numbers and mapping them first to tuples where on the left side is that number module 3 and on the right side modulo 5. Then we are matching those tuples to cases where both are zero, left is zero, right is zero or neither is zero. 

Also the actual logic is in the map-block and side-effect of printing is in the foreach-block.