サイコロコマンド - コマンドライン引数からランダムに1つ返すコマンド

30分プログラム、その662。コマンドライン引数からランダムに1つ返すコマンドを作ってみた。イメージとしては、各面の文字を自由に決めれるサイコロ。

そういえば最近、Scalaを触ってないことに気がついたので、リハビリがてら簡単なコマンドを作ってみた。

使い方

$ scala Dice A B C
B

$ scala Dice A B C
A

30分プログラムをどの言語でやるかを迷ったときに使うことを想定して作ってみた。

$ scala Dice Perl Python Scala Scheme Erlang Haskell
Erlang

ソースコード

import scala.util.Random

object Dice{
  val rand = new Random()

  def choice[A](xs : Seq[A]) : A = {
    val n = xs.length
    xs(rand nextInt n)
  }

  def main(args: Array[String]){
    println(choice(args))
  }
}