${ 自分のための技術ナレッジ }

自分のための技術メモです

2010-09-01から1ヶ月間の記事一覧

|Scala| Array

val ary1 = Array(1, 2, 3) val ary2 = Array(4, 5, 6) Array.concat(ary1, ary2).foreach(println(_)) [実行結果] 1 2 3 4 5 6 println(ary1(0) + ary2(0)) [実行結果] 5 ary.filter(1 <=).foreach)((x) => print(x + " "))(;println() // 1 以上 ary.filte…

|Scala| map メソッド

val list = List(1, 2, 3) println(list.map(_ * 10)) // println(list.map)((x) => x * 10))( println(list) [実行結果] List(10, 20, 30) List(1, 2, 3)[要点] map メソッドはコレクション内の値それぞれに対して引数に渡された関数を適用する map メソッ…

|Scala| ブロック

val x = 10 val i = { val xx = 10 xx * x } println("i = " + i) [実行結果] i = 100[要点] 「{}」内がブロック ブロック外で宣言された変数にアクセス可能 ブロックの最終行が結果として扱われる 結果を変数に格納可能

|Scala| 生文字リテラル(raw string literal)

生文字リテラル → 「"""(ダブルクォテーション 3 つ)」 val reg = """\D""".r // 通常は ""\\D+"" val v1 = "1234asdf1234" println(reg.findFirstIn(v1).getOrElse(1)) val rs = """1234 5678"""" println(rs) [実行結果] asdf 1234 5678"[要点] """で囲む …

|Scala| 「:」メソッド?

List オブジェクトに「:」メソッドがあります。val l1 = List(1, 2, 3) val l2 = List(4, 5, 6) l1 :: l2 → List(List(1, 2, 3), 4, 5, 6) // 計算量 O(1) l1 ::: l2 → List(1, 2, 3, 4, 5, 6) // 計算量 O(n)(d:id:prudence3298:20100520)

|Scala| ver2.8 では input.getLines.collect が使えない

input.getLines.collect → input.getLines.toSeq (d:id:kencoba:20100329)ちなみに Eclipse のコンソールでの EOF は Ctrl + Z なんですね

|Scala| Option[T]

package study object StudyOption { def main(args : Array[String]) : Unit = { println(op(1).get) println(op(0).get) } def op(x : Int) : Option[Int] = { if (x == 1) Some(x) else None } } [実行結果] 1 Exception in thread "main" java.util.NoSu…

|Scala| for 式

package study object StudyFor { def main(args : Array[String]) : Unit = { for (i <- 1 to 10) { print(i + " ") } } } 1 から 10 までの繰り返し処理 [実行結果] 1 2 3 4 5 6 7 8 9 10 [要点] for (i

|Scala| Hello World

まずは定番 package study object HelloWorld { def main(args: Array[String]) : Unit = { println("Hello World") } } [実行結果] Hello World[要点] object = シングルトンクラス def = 関数定義 (args : Array[String]) = (引数名 : 引数型) Unit = 関数…

Scala プログラミング入門を買ったので

どうも hatimiti ことハチミチです。 仕事では Java やってるのですが、 Scala にすごく興味があるので本を買ってみました。Scala プログラミング入門 (http://ec.nikkeibp.co.jp/item/books/P84230.html) (Amazon には貼らない(ぇScala に関するメモなど…