scala部分语法

映射map有两种方式

方法一:-> 可变
方法二:()不可变

获取值:map名.getOrElse(key,默认的value)

修改:map名(key)= 新value

元组:下标是1开始的

初始化:val t = (“scala”,10,(“spark”,1))
取值:t._1;t._2._1

初始化:val t,(a,b) = (“scala”,10,(“spark”,1))
取值:a;b

注意:数组中可以存放元组,并且可以将这个数组转化为map arr.toMap

数组的拉链操作

方法一:arr1 zip arr2
方法二:arr1.zip(arr2) arr1中的值为map中的key,arr2中的值为value,反过来也是可以的。
注意:这里面不在会两个数组是不是一样的长

集合

Seq(序列)

申明:val list = List(1,2)

增加元素:添加元素0到list前面
val list2 = 0 :: list
val list3 = list.::(0)
val list4 = 0 +: list
val list5 = list.+:(0)

增加元素:添加元素9到list后面
val list6 = list +: 4

两个list的合并:list1 ++ list2(list1在前list2在后面),list2 ::: list1(list2在前list1在后面)

listBuffer中
追加元素:生成了新的list
list1 += 4
list1.append(5)
list1 ++ list2

Set(集)

不可变set:
申明:val set1 = new HashSetint

增加:要被去重
set1 ++ set2
set1.add(2)
set1 ++= Set(1,3,5)
删除:
set2 -= 1
set2.remove(2)

Map(映射)

申明:val map1 = new HashMapString,Int

添加:
map1(“scala”) = 1
map1 += ((“java”, 2), (“C#”, 3))
map1.put(“c++”, 5)

删除:
map1 -= “java”
map1.remove(“C#”)

你可能感兴趣的:(大数据,Scala)