For循环的使用

35 阅读1分钟

举例:输出1-20之间的数

步长默认为 1

object bais1 {
  def main(args: Array[String]): Unit = {
    for(i <- 1  to 20){
      print(i)
    }
  }
}

输出结果:1 2 3 4 5 6

步长的使用

object bais1 {
  def main(args: Array[String]): Unit = {
    for(i <- 1  to 20 by 2){
      println(i)
    }
  }
}

输出结果:1 3 5 7 9 11

循环的守卫

举例:既能被2整除又能被3整除的数

object bais1 {
  def main(args: Array[String]): Unit = {
    for(i <- 1  to 20; if(i%2==0);if(i%3==0)) {
      println(i)
    }
  }
}

输出结果:6 12 18

for的返回值

object bais1 {
  def main(args: Array[String]): Unit = {
    //for(i <- 1  to 20 by 2){
      //println(i)
   // }
    val rs = for(i <-1 to 4) yield {
      i*2
    }
    println(rs)
    println(rs(0))
  }
}

输出结果:Vector(2,4,6,8) 2

任务一:打印数字1-100,每行包括一组5个数,每组换行

object bais2 {
  def main(args: Array[String]): Unit = {
    for(i<- 1 to 100){
      print(s"$i\t")
      if (i % 5 == 0) {
        println()
      }
    }
  }
}

任务二:输入一个正整数n,输出 斐波那契数列的前n项和