今日もコップ本
Scala は、クラスが静的メンバー(static member)を持てないという点で Java よりもオブジェクト指向である。その代わりに、Scala はシングルトンオブジェクト(singleton objects)を持っている。シングルトンオブジェクトの定義は、class キーワードの代わりに object キーワードを使っていることを除けば、クラス定義とよく似ている。
とな。
import scala.collection.mutable.Map object Test { private val cache = Map[String , String]() def check(s: String): String = { if(!cache.contains(s)) { println("cache -> " + s) cache += (s -> (s + "-----")) } cache(s) } } println(Test.check("a")) println(Test.check("a"))
実行結果
cache -> a a----- a-----
慣れないのもあってなかなか思うように書けない (汗