1. 变量声明,函数声明

    var声明变量,val声明常量,val中含有final的语意
    var 变量名 :变量类型 = 内容;
    也可以不写变量类型,由编译器推断

    1. //变量声明
    2. var str : String = "test";
    3. //常量声明
    4. val str1 : String = "test"
    5. var greeting = "Hello World!";

    Scala中方法返回类型Unit = Void
    def functionName ([参数列表]) : [return type] = { function body return [expr] }

    1. object add{
    2. def addInt( a:Int, b:Int ) : Int = {
    3. var sum:Int = 0
    4. sum = a + b
    5. return sum
    6. }
    7. }
    1. 条件,循环语句

    条件语句,循环语句与Java相同

    1. if(布尔表达式){
    2. // 如果布尔表达式为 true 则执行该语句块
    3. }else{
    4. // 如果布尔表达式为 false 则执行该语句块
    5. }
    1. object Test {
    2. def main(args: Array[String]) {
    3. var a = 10;
    4. // 无限循环
    5. while( true ){
    6. println( "a 的值为 : " + a );
    7. }
    8. }
    9. }

    3.闭包
    闭包定义:闭包英文Closure。闭包通常来讲可以简单的认为是可以访问一个函数里面局部变量的另外一个函数。这种函数把他所引用的所有东西都放在一个上下文里面“包”了起来。可以理解为一种特殊的函数。

    1. var factor = 3
    2. val multiplier = (i:Int) => i * factor

    4.继承体系
    image.png
    Any等于Java中的Object
    Nothing是所有基本类型和引用类型的子类

    5.常用集合处理函数
    map 同 Java
    filter 同 Java
    find 同 findFirst
    takeWhile() 从集合头部开始,一直取到第一个不满足断言的元素
    dropWhile() 从集合头部开始,一直丢弃满足断言的元素,直到遇到第一个非匹配项