Scala中for循環的使用


Scala中的for循環:
一.第一種實現方式:(生成器表達方式)
object OntFor { 
   def main(args:Array[String]) : Unit ={      for (i <- 0.to(10)) {
         //(i <- 0 to 10)
         println(i+",");      }   }
} 輸出結果:1,2,3,4,5,6,7,8,9,10,
 
二.使用until生成1到10范圍內的數據,包左包右(相當於10-1)
object UntilFor { 
  def main(args:Array[String]):Unit={
    for (i <- 0.until(10)) print(i}+",");
      //(i <- 0 until 10)
  }
}
輸出結果為:1,2,3,4,5,6,7,8,9
三.在第一種實現方式的基礎上加上步長限制輸出結果
object OntFor { 
    def main(args:Array[String]):Unit = { 、
        for (i <- 0.to(10) by 2) {
            print(i+",");
        }
     }
}
  字段解釋: i: 相當於java中的變量
       0.to(10): 0到10的自然數
       by 2: 輸出結果隔(2-1)個輸出,不夠的不輸出
       結果: 1,3,5,7,9

  

四.利用步長使指定元素為倒敘輸出或使用reverse關鍵字
object OntForBy { 
  def main(args:Array[String]): Unit={
      for (i <- 10.to(1) by -1) {
            print(i+",")
      }
      for (i <- 1.to(10) reverse) print(i+",");
}
  兩個輸出結果同為: 10,9,8,7,6,5,4,3,2,1, }

  

五.循環守衛模式:(守衛模式就是在循環內添加判斷語句)
object ShouWeiFor{ 
    def main(args:Array[String]):Unit={
      //當循環中的數據滿足模與2等於0時打印對應數據
      for (i <- 0 unitl 10 if i%2==0) print(i+",");
   }
}

  

六. 循環嵌套
 
object QianTaoFor { 
    def main(args:Array[String])"Unit = {
       for (i <- 1.to(10); j <- 1.to(10)){
          print(i + "+" + j + "=" + (i + j) + "\t");
       }
   }
}

  

七.循環帶返回值,利用守衛規則歸並數組中的偶數到新的數組中
object QianTaoFor { 
   def main(args:Array[String]):Unit={
      var res = for (i <- 1.to(10); if (i % 2 == 0)) yield i
      for (e <- res) print(e+",");
  }
}

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM