Scala提供了多种方法来简化函数字面量中多余的部分,比如前面例子中filter方法中使用的函数字面量,完整的写法如下: (x :Int ) => x +1 首先可以省略到参数的类型,Scala可以根据上下文推算出参数的类型,函数定义可以简化为: (x) => x +1 这个函数可以进一步去掉参数的括号,这里的括号不起什么作用: x => x +1 Scala 还可以进一步简化,Scala允许使用”占位符”下划线”_”来替代一个或多个参数,只要这个参数值函数定义中只出现一次,Scala编…
1. 使用 val & var 定义变量 Scala 中的变量被分为2种:val 和 var.其含义于 Java 中的 final 关键字类似. val 等同于被 final 修饰过的变量, 即一旦初始化便不可被重新赋值. var 等同于未被 final 修饰过的变量,可以被重新赋值. def main(args: Array[String]): Unit = { val x = 1 x = 2 // 编译错误 } def main(args: Array[String]): Unit = {…
笔记的整理主要针对Scala对比Java的新特性: 1.if表达式 if表达式是有结果返回的. val a= if (5>2) "你好" else 1 a的值为if表达式返回值为 "你好" 2.while表达式 while表达式是没有返回值的(返回值为 Unit),在scala中避免使用,通常都需要与var结合使用 3.for表达式 枚举集合遍历 val a = Array(1,2,3,4,5,6) for (i <- a) println(…