2009-06-12から1日間の記事一覧
簡単なフレーム SimpleGUIApplication という抽象クラスが用意されており、SwingUtilities#invokeLater を勝手にやってくれます。以下は空のパネルがあるだけのフレームの例です。 import scala.swing._ object Main extends SimpleGUIApplication { val pan…
テキストファイルの出力は scala.io.Source にて以下の様に簡単に行えます。 import scala.io.Source object Main extends Application { Source.fromFile("test.txt").getLines.foreach(print) }
traitの宣言と利用 trait は、Javaで言うインターフェースのようなものですが、メソッドのボディを持つことができる点が大きな違いとなります。 trait は以下のように定義します。 trait Friendly { def greet() = "Hi" } この例では、greet メソッドは"Hi"…
ケースクラスはパターンマッチングのためのクラスです。 class の前に case キーワードを付けるとケースクラスになります。 abstract class Expr case class Number(n: Int) extends Expr case class Sum(e1: Expr, e2: Expr) extends Expr ケースクラスには…
ジェネリクスなクラスは[]にて型指定を行います。 class Type[T] { private var v : T = _ def set(value : T) {v=value} def get : T = v } object Main extends Application { val i1 = new Type[Int] //Int用 i1.set(100) println(i1.get) //100 val i2 =…