= Scala文法未整理 = Scalaには組み込みの構文というものがほとんどなく、Javaのそれにあたるものがほとんど「メソッド呼び出し」で実現されている。 「構文」の見かけをもったものが、実際はメソッド呼び出しに変換されている。 === 配列へのアクセスが実はメソッド呼び出し === {{{ var array = Array(1, 2, 3); println(array(0)); }}} は、実際には以下のめようなメソッド呼び出し {{{ println(array.apply(0)); }}} 配列への代入も実はメソッド呼び出し {{{ array(0) = 1234; // は以下のメソッド呼び出し array.update(0, 1234); }}} === 演算子も実はメソッド呼び出し === {{{ var a = 1 + 3; // は以下のメソッド呼び出し var a = (1).+(3) // ※以下にしてしまうと、「1.」の「+」メソッドを呼び出すことになってしまう。 var a = 1.+(3) }}} === 二項タプルの作成もメソッド呼び出し === {{{ var a = 1 -> "abc"; var b = (1).->("abc"); var c = (1, "abc"); println(a == b); println(a == c); }}}