=>(匿名函數)
=> 匿名函數,在Spark中函數也是一個對象可以賦值給一個變量。
Spark的匿名函數定義格式:
(形參列表) => {函數體}
所以,=>的作用就是創建一個匿名函數實例。
比如:(x:Int) => x +1 ,就等同于下面的Java方法:
1 | public int function( int x) { |
示例:
02 | var add = (x: Int) => x + 1 |
06 | def main (args: Array[String] ): Unit = { |
07 | var symbol = new Symbol |
08 | printf( "" + symbol.add.toString()) |
<- (集合遍歷)
循環遍歷,示例如下:
1 | var list = Array( 1 , 2 , 3 , 4 ) |
上面代碼類似于Java的代碼:
3 | System.out.print(aa+ " " ); |
++=(字符串拼接)
:::三個冒號運算符與::兩個冒號運算符
:::三個冒號運算符表示List的連接操作。(類似于Java中的 list1.addAll(list2))
::兩個冒號運算符表示普通元素與list的連接操作。(類似于Java中的list1.add(A)操作)
scala操作示例:
4 | println(three.toString()) |
8 | println(four.toString()) |
-> 構造元組和_N訪問元組第N個元素
1.scala中元組含義:
-
元組是不同類型的值聚集線程的列表
-
通過將多個值使用小括號括起來,即表示元組
2.scala中元組與數組區別:數組中元素 數據類型必須一樣,但是元組數據類型可以不同。
示例程序:
_(下劃線)的用法
通配符
_可以起到類似于*作用的通配符:
1 | import org.apache.spark.SparkContext._ |
指代集合中的每一個元素
例如 遍歷集合篩選列表中大于某個值的元素。
1 | val lst = List( 1 , 2 , 3 , 4 , 5 ) |
2 | val lstFilter = lst.filter(_ > 3 ) |
獲取元組中指定下標的元素值
使用模式匹配可以用來獲取元組的組員
1 | val m = Map( 1 -> 2 , 2 -> 4 ) |
2 | for ((k,_) <- m) println(k) |
成員變量而非局部變量添加默認值
2 | def main(args: Array[String]): Unit = { |
:_* 作為一個整體,告訴編譯器你希望將某個參數當做數序列處理
01 | def main(args: Array[String]): Unit = { |
02 | val s = sum( 1 to 5 :_*) |
06 | def sum(args: Int*) : Int = { |
+=
為可變數組添加元素
1 | val arrBuf1 = new ArrayBuffer[Int]() |
-=
從map后者可變數組中移除相應的值
01 | val arrBuf1 = new ArrayBuffer[Int]() |
08 | var map = Map( 1 -> 1 , 2 -> 2 , 3 -> 3 ) |
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。