注:本文是本人在了解scala过程中的一些要点笔记而已,仅帮助学过的朋友进行一下回忆,也供本人以后快速复习用。
scala有两种变量类型,val与var,val型变量初始化了就不能再改变,var则可以改变
scala可以自动推断变量类型,如val name = “zhlwish”
scala定义函数:
def add(x: Int, y: Int): Int =
if (x > y) x else y
for语句写法:
for(arg <- args)
println(arg)
foreach是List类型的一个函数,调用方法args.foreach((arg: String) => println(arg)),看起来是lamda表达式
数组只能如下定义:
val names = new Array(3) //默认构造器构造
val namess = Array(3) //工厂方法构造
val namesss = Array(”zhlwish”, “zhlwish”) //工厂方法构造
和Java用[]不一样,scala用()取索引
和java用<>不一样,scala泛型用[],如val val names = new Array[String](3)
scala中任何运算符都是函数,如1 + 2实际上是(1).+(2),Int型对象有个名为+的函数
有上知,scala中调用函数其实可以不用(),比如val name = “zhlwish”; println(name.toString),这里println一定要用括号,倒不是因为println函数有参数,而是因为println调用了标准控制台输出数据,他本身不是一个对外无影响的
scala中列表的定义方式:val oneTwoThree = List(1, 2, 3), List是类型安全的,即List中只能有一种类型的对象,而且,注意List是不可变的
List有个方法叫做:::,可以做列表叠加,返回的是一个全新的List,更常用的是::,作用是将一个新元素组合到已有List的前面,即 0 :: oneTwoThree, 返回(0, 1, 2, 3)
和List对应的是Tuple,称为元组,也不可变,但是可以放不同类型的元素进去
scala也有Set和Map,而且分别有可变Set与Map和不可变Set与Map
Map这么定义:val name = Map(1->”zhlwish.com”)
scala中return是可选的,默认返回函数体中最后一句的返回值