パターンマッチングのサンプルその2。
Snippet: Match Arguments | The Scala Programming Language
package sample.snippet object PatternMatchSample2 extends Application { var verbose = false val array = Array("-h", "-verbose", "aaa") for (a <- array) a match { case "-h" | "-help" => println("Usage: scala Main [-help|-vervose]") case "-v" | "-verbose" => verbose = true case b => println("Unkrown option: '" + b + "'") // unreachable code // case x => println(x) } if (verbose) println("調子はどうだい?") }
a == "-h"とかでマッチング。
bというのが突然出てきたけど、変数名は何でもいいみたい。
どれでもないものはすべてこのケースになる。
実行結果。
Usage: scala Main [-help|-vervose] Unkrown option: 'aaa' 調子はどうだい?
特に問題なし!