reduce 方法是对集合进行归约的通用方法,它将集合中的元素两两结合,使用指定的二元操作符进行归约,默认从左到右。 reduceLeft 方法也是对集合进行归约的方法,它从左到右将集合中的元素两两结合,使用指定的二元操作符进行归约。 reduceRight 方法与 reduceLeft 类似,但是它从右到左将集合中的元素两两结合,使用指定...
//定义一个列表scala>val l=List(1,2,3,4,5)l:List[Int]=List(1,2,3,4,5)//map操作scala>l.map(_*2)res0:List[Int]=List(2,4,6,8,10)//filter操作scala>l.filter(_>2)res3:List[Int]=List(3,4,5)//collect操作scala>l.collect{caseiifi>2=>i*2}res1:List[Int]=List(6,8,10)...
cons操作符:: :: 常用来构建和分解列表 // Nil 是一个空列表 val myList = 1 :: 2 ::3 :: Nil println(myList) //分解列表 val head :: tail = myList // =>List(1, 2, 3) println(head) // =>1 tuple(元组) Scala 元组将固定数量的项组合在一起,以便它们可以作为一个整体传递。 元组...
在函数式编程语言中,函数是“头等公民”,它可以像任何其他数据类型一样被传递和操作 案例:首先定义一个方法,再定义一个函数,然后将函数传递到方法里面 object TestScala {//定义一个方法//方法m2参数要求是一个函数,函数的参数必须是两个Int类型//返回值类型也是Int类型def m1(f:(Int,Int) => Int) : Int ...
::操作符是将给定的头和尾创建一个新的列表,例如9 :: 2表示 9 是 head 而 2 是 tail,返回的新的列表List(9,2),需要注意的是::操作符是右结合的,如9 :: 5 :: 2 :: Nil相当于9 :: (5 :: (2 :: Nil)),即它是从右向左开始将::操作符两边的 head 和 tail 结合的,最后返回的就是List(...
(1)在网页上写,这个网址是scala官方提供的。 Scastie - An interactive playground for Scala.scastie.scala-lang.org/pXtbeGP6SpGLhmtG9XEtKQ (2)也可以安装一个idea,在里面装个scala插件就可以开搞了。 虽然直接用网址比较方便,但我是装了idea的,因为我需要vim插件。 2.教程来源: (1)官方的scala ...
Scala语言来源于Java,它以Java虚拟机(JVM)为运行环境,Scala源码 (.scala)会编译成.class文件。这意味着Scala程序可以与Java程序互操作,并且可以利用JVM的优化和性能。 在语法上,Scala和Java有一些区别。 例如,在Scala中,一切皆为对象,而在Java中,基本类型、null、静态方法等不是对象。在Scala中,成员变量/属性必须...
Scala 数组相关操作 一、定长数组二、变长数组三、数组遍历四、数组转换五、多维数组六、与Java互操作 一、定长数组 在 Scala 中,如果你需要一个长度不变的数组,可以使用 Array。但需要注意以下两点:在 Scala 中使用 (index) 而不是 [index] 来访问数组中的元素,因为访问元素,对于 Scala 来说是方法调用,...
Map 基本操作Scala Map 有三个基本操作:方法描述 keys 返回Map 所有的键(key) values 返回Map 所有的值(value) isEmpty 在Map 为空时返回true实例以下实例演示了以上三个方法的基本应用:实例 object Test { def main(args: Array[String]) { val colors = Map("red" -> "#FF0000", "azure" -> "#...
跟java的数据类型不同,Scala不区分基本类型和引用类型,所以这些类型都是对象,可以调用相对应的方法,String直接使用的是 java.lang.String 不过由于String实际是一系列Char的不可变的集合,Scala中大部分针对集合的操作都可以用于String,具体来说,String的这些方法存在于类scala.collection.immutable.StringOps中。由于String...