JJUG CCCおよびid:happy_ryo迎撃オフの件もgdgdになって書けなくなったので、ScalaでFizzBuzzを関数型っぽく書いてみる。
タイトル長い。
関数型っぽく、Intのリストを作り、それをStringのリストに変換し、そのリストに対してprintlnで出力するだけの簡単なお仕事です。
object FizzBuzz { def main(args : Array[String]) { val list = 1 to 100 val fizzbuzz = list.map ((x:Int) => { var ret:String = "" if (x % 3 == 0) ret += "Fizz" if (x % 5 == 0) ret += "Buzz" if (ret.length == 0) ret = x.toString ret }) fizzbuzz.foreach ((x) => { println(x) }) } }
というわけで、5/10(土)に開催のhttp://cappuccino.jp/scala-ja/?Scala%CA%D9%B6%AF%B2%F1%A1%F7%B4%D8%C0%BE-1に参加させていただきます。