最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

scala中常用特殊符號(hào)詳解

 更新時(shí)間:2019年06月17日 10:37:00   作者:咸魚(yú)  
這篇文章主要介紹了scala中常用特殊符號(hào)詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

=>(匿名函數(shù)) 

=> 匿名函數(shù),在Spark中函數(shù)也是一個(gè)對(duì)象可以賦值給一個(gè)變量。

Spark的匿名函數(shù)定義格式:

(形參列表) => {函數(shù)體}

所以,=>的作用就是創(chuàng)建一個(gè)匿名函數(shù)實(shí)例。

比如:(x:Int) => x +1 ,就等同于下面的Java方法:

public int function(int x) {
 return x+1;
}

示例:

class Symbol {
 var add = (x: Int) => x + 1
}

object test2 {
 def main (args: Array[String] ): Unit = {
 var symbol = new Symbol
 printf(""+ symbol.add.toString())
 }
}

<- (集合遍歷)

循環(huán)遍歷,示例如下:

var list = Array(1,2,3,4)
for (aa <- list) {
 printf(aa+" ")
}

上面代碼類(lèi)似于Java的代碼:

int[] list = {1,2,3,4};
for(int aa : list) {
 System.out.print(aa+" ");
}

++=(字符串拼接)

var s:String = "a"
s+="b"
println(s)
s++="c"
println(s)

:::三個(gè)冒號(hào)運(yùn)算符與::兩個(gè)冒號(hào)運(yùn)算符

:::三個(gè)冒號(hào)運(yùn)算符表示List的連接操作。(類(lèi)似于Java中的 list1.addAll(list2))
 ::兩個(gè)冒號(hào)運(yùn)算符表示普通元素與list的連接操作。(類(lèi)似于Java中的list1.add(A)操作)

scala操作示例:

val one = List(1,2,3)
val two = List(4,5,6)
val three = one ::: two
println(three.toString())

val four = 7 :: three

println(four.toString())

-> 構(gòu)造元組和_N訪問(wèn)元組第N個(gè)元素

1.scala中元組含義:

  • 元組是不同類(lèi)型的值聚集線程的列表
  • 通過(guò)將多個(gè)值使用小括號(hào)括起來(lái),即表示元組

2.scala中元組與數(shù)組區(qū)別:數(shù)組中元素 數(shù)據(jù)類(lèi)型必須一樣,但是元組數(shù)據(jù)類(lèi)型可以不同。

示例程序:

val first = (1,2,3) // 定義三元元組

val one = 1
val two = 2
val three = one -> two

println(three) // 構(gòu)造二元元組

println(three._2) // 訪問(wèn)二元元組中第二個(gè)值

_(下劃線)的用法

通配符

_可以起到類(lèi)似于*作用的通配符:

import org.apache.spark.SparkContext._

指代集合中的每一個(gè)元素

例如 遍歷集合篩選列表中大于某個(gè)值的元素。

val lst = List(1,2,3,4,5)
val lstFilter = lst.filter(_ > 3)

獲取元組中指定下標(biāo)的元素值

val ss = (1,"22","333")
println(ss._1)

使用模式匹配可以用來(lái)獲取元組的組員

val m = Map(1 -> 2,2 -> 4)
for ((k,_) <- m) println(k) //如果不需要所有部件, 則在不需要的部件使用_; 本例只取key,因此在value處用_

成員變量而非局部變量添加默認(rèn)值

var s:Int=_
def main(args: Array[String]): Unit = {
 println(s)
}

:_* 作為一個(gè)整體,告訴編譯器你希望將某個(gè)參數(shù)當(dāng)做數(shù)序列處理

def main(args: Array[String]): Unit = {
 val s = sum(1 to 5:_*)  //把1 to 5當(dāng)作一個(gè)序列處理
 println(s)
}

def sum(args: Int*) : Int = {
 var result = 0 ;
 for(s2 <- args) {
  result += s2 ;
 }
 result ;
}

+=

為可變數(shù)組添加元素

val arrBuf1 = new ArrayBuffer[Int]()
arrBuf1+= 11 // 添加一個(gè)元素

println(arrBuf1)

-=

從map后者可變數(shù)組中移除相應(yīng)的值

val arrBuf1 = new ArrayBuffer[Int]()
arrBuf1+= 11 // 添加一個(gè)元素
arrBuf1+= 12 // 添加一個(gè)元素
arrBuf1-= 12 // 刪除一個(gè)元素

println(arrBuf1)

var map = Map(1 -> 1,2 -> 2,3 ->3 )
map-=1
println(map)

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • microlog4android將Android Log日志寫(xiě)到SD卡文件中實(shí)現(xiàn)方法

    microlog4android將Android Log日志寫(xiě)到SD卡文件中實(shí)現(xiàn)方法

    這篇文章主要介紹了microlog4android將Android Log日志寫(xiě)到SD卡文件中實(shí)現(xiàn)方法的相關(guān)資料,需要的朋友可以參考下
    2016-10-10
  • 深入淺析SpringBoot中的自動(dòng)裝配

    深入淺析SpringBoot中的自動(dòng)裝配

    SpringBoot的自動(dòng)裝配是拆箱即用的基礎(chǔ),也是微服務(wù)化的前提。接下來(lái)通過(guò)本文給大家介紹SpringBoot中的自動(dòng)裝配,感興趣的朋友跟隨腳本之家小編一起學(xué)習(xí)吧
    2018-05-05
  • Struts2的輸入校驗(yàn)實(shí)例代碼

    Struts2的輸入校驗(yàn)實(shí)例代碼

    這篇文章主要介紹了Struts2的輸入校驗(yàn)實(shí)例代碼,非常不錯(cuò),具有參考借鑒價(jià)值, 需要的朋友可以參考下
    2017-03-03
  • Java 判斷線程池所有任務(wù)是否執(zhí)行完畢的操作

    Java 判斷線程池所有任務(wù)是否執(zhí)行完畢的操作

    這篇文章主要介紹了Java 判斷線程池所有任務(wù)是否執(zhí)行完畢的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-08-08
  • org.springframework.beans.BeanInstantiationException異常解決

    org.springframework.beans.BeanInstantiationException異常解決

    本文主要介紹了org.springframework.beans.BeanInstantiationException異常解決,大多數(shù)情況下,這個(gè)異常是由于簡(jiǎn)單的配置錯(cuò)誤或者代碼問(wèn)題導(dǎo)致的,下面就來(lái)具體解決一下
    2024-03-03
  • 新手初學(xué)Java List 接口

    新手初學(xué)Java List 接口

    這篇文章主要介紹了Java集合操作之List接口及其實(shí)現(xiàn)方法,詳細(xì)分析了Java集合操作中List接口原理、功能、用法及操作注意事項(xiàng),需要的朋友可以參考下
    2021-07-07
  • SpringCloud升級(jí)2020.0.x版之OpenFeign簡(jiǎn)介與使用實(shí)現(xiàn)思路

    SpringCloud升級(jí)2020.0.x版之OpenFeign簡(jiǎn)介與使用實(shí)現(xiàn)思路

    在微服務(wù)系統(tǒng)中,我們經(jīng)常會(huì)進(jìn)行 RPC 調(diào)用。在 Spring Cloud 體系中,RPC 調(diào)用一般就是 HTTP 協(xié)議的調(diào)用。對(duì)于每次調(diào)用,都要經(jīng)過(guò)一系列詳細(xì)步驟,接下來(lái)通過(guò)本文給大家介紹SpringCloud OpenFeign簡(jiǎn)介與使用,感興趣的朋友一起看看吧
    2021-10-10
  • mybatis防止SQL注入的方法實(shí)例詳解

    mybatis防止SQL注入的方法實(shí)例詳解

    SQL注入是一種很簡(jiǎn)單的攻擊手段,但直到今天仍然十分常見(jiàn)。那么mybatis是如何防止SQL注入的呢?下面腳本之家小編給大家?guī)?lái)了實(shí)例代碼,需要的朋友參考下吧
    2018-04-04
  • java能寫(xiě)爬蟲(chóng)程序嗎

    java能寫(xiě)爬蟲(chóng)程序嗎

    在本篇文章里小編給大家整理的是一篇關(guān)于java是否能寫(xiě)爬蟲(chóng)程序的一篇文章,對(duì)此有興趣的朋友們可以學(xué)習(xí)下。
    2021-01-01
  • IDEA去除掉代碼中虛線、波浪線和下劃線實(shí)線的方法

    IDEA去除掉代碼中虛線、波浪線和下劃線實(shí)線的方法

    初次安裝使用IDEA,總是能看到導(dǎo)入代碼后,出現(xiàn)很多的波浪線,下劃線和虛線,這是IDEA給我們的一些提示和警告,但是有時(shí)候我們并不需要,反而會(huì)讓人看著很不爽,這里簡(jiǎn)單記錄一下自己的調(diào)整方法,供其他的小伙伴在使用的時(shí)候參考
    2024-09-09

最新評(píng)論

民和| 竹北市| 徐汇区| 三台县| 丰原市| 新民市| 介休市| 黎城县| 成安县| 贵定县| 格尔木市| 嘉峪关市| 山阳县| 三原县| 中宁县| 彝良县| 韩城市| 苍山县| 垣曲县| 丹巴县| 鄂州市| 仙游县| 贵德县| 博兴县| 贡觉县| 鄢陵县| 体育| 永安市| 澎湖县| 金川县| 滦平县| 保靖县| 大同县| 秭归县| 施秉县| 东至县| 威信县| 清河县| 讷河市| 咸丰县| 宁南县|