Scala学习

来源:互联网 发布:淘宝自动回复短语 创意 编辑:程序博客网 时间:2024/06/05 14:19

Scala入门——(一)

越强大,越温柔;越独立,越自由

学习Scala第一篇:判断and循环


package PXL.basics/*** * 控制结构:顺序,条件,循环 *  */object control {  def main(args: Array[String]): Unit = {    println("scala")    /**     * 1,if 条件表达式执行之后是有值的     * 2,可以进行类型推导     * 3,可以没有else,没有else的时候类型为any,没有实现if返回()注意和none的区别:     *    为了确保if条件表达式的类型为处理逻辑类型需要类型,而不是any类型     * 4,多条语句可以使用{}返回     *      */    var age = 30    val res = if (age>=30) "worker" else "student"//这里可以定义变量接受判断返回的值    println(res)    val res2 = if (age>18) "adult" else 1//此时res2是any类    println(res2)    var x,y = 3    //返回最后一条语句的结果    val result4 = if (age>18) {      x = x+1;      y = y+1;      x+y;      "return this please"    }  else 0    println(result4)    //for 循环并进行判断;提取0——5中满足条件的值    for(i <- 0 to 5 if i%2==0)    //println 必须加括号,提取偶数      println (i)    var flag = true    var sum = 0    for (i<- 0 to 6 if flag){      sum = sum + i      if(i == 5) flag = false    }    println("sum = "+sum)//使用逗号,输出内容带括号    //对字符或字符串的操作    for (item<-"Hello Spark") println (item)    //如果要输出的是单词,则需要切分    for (item<-"Hello Spark".split(" ")) println (item)    /***     * 挑出for循环方法使用break     */    sum = 8    for (i<- 0 to 6 if flag){      sum = sum + i      if(i == 5) return//返回的是方法体      println("sum = "+sum)    }    /***     * while循环     *      */    import scala.util.control.Breaks._    breakable{      flag = true      while(flag){        for (item<-"Spark"){          println(item)          //很神奇的是双引号和单引号不一样          if (item == 'r') {flag = false;break}        }      }      println("break while"+flag)//没有输出,不清楚为什么    }    println("break while")  }}
原创粉丝点击