2008-03-17から1日間の記事一覧

記号をメソッド名に使えるとこういう事になるから困る。

def main(args: Array[String]) { class Stack[A <:AnyVal](val elem:A) { def >>[B <: A](newone: B): Stack[B] = new Stack[B](newone) { override def toString() = newone.toString() + " " + Stack.this.toString() } override def toString() = elem toString } var s = new Stack(10) >> 4 >> 11 >> 6 >> 1 println(…</:></:anyval](val>

で、一体何が起きてるん?

println(List(1,2) :: List(3,4)) println(List(1,2) ::: List(3,4)) コンソールには、 List(List(1, 2), 3, 4) List(1, 2, 3, 4) と言う風に出力さりる。 一体どうなったら、こういう結果になるのだろうか。ワカラン…

恐るべし・・・

何かと出遅れた感タプシなのだけど、ちょっと触ってみてる。 package aaa object Flyers { class Bird(val name: String) { def fly(height : int) { Console.println("I'm Fly") } } class Plane(val callsign: String) { def fly(height : int) = { printl…