Scala_一般的な機能

1452 ワード

一、If...Else...
  val x = 5
  val s = if (x > 0) 1 else -1 // s    Int
  val m = if (x > 0) "positive" else -1 // s    String Int      Any
  //  Scala ,            。   else     ,       :if (x > 0) 1 else () ,        。()  Unit 
  if (x > 0) 1

二、循環:While、For
①Whileループ:Scalaにはbreak文やcontinue文がなく、break機能を使用する必要がある場合:Boolean型の制御変数、ネスト関数からreturn、Breaksオブジェクトを使用するbreakメソッド
  var n = 0
  while (n < 10) {
    println(n)
    n += 1
  }

②Forサイクル:for(i
  for (i 

③アドバンスドforループ:'変数
  for (i 

三、異常:Exception throw式には特別なタイプのNothingがあります.これはif/else式で役立ちます.ブランチのタイプがNothingの場合、if/else式のタイプは別のブランチのタイプです.
  val q:Int = 10
  if (q >= 0) {sqrt(q)} else throw new IllegalArgumentException("x should not be negative")
  //         Double,        Nothing。   ,if/else       Double

四、Lazy valがlazyと宣言されたとき、その初期化は私たちが初めて値を取るまで延期されます.
  lazy val words= scala.io.Source.fromFile("words.txt") .mkString
  //                 。   lazy  ,  ,         words,         

五、正規表現Regexオブジェクトを構築するには、Stringクラスのrメソッドを使用します.正規表現にスラッシュまたは引用符が含まれている場合は、元の文字列構文を使用したほうがいいです.
  val numPattern = "[0-9]+".r
  val wsnumwsPattern = """\s+[0-9]+\s""".r
    // findAllIn               。   for      
  for (matchString