400-650-7353
您所在的位置:首頁 > IT干貨資料 > 大數(shù)據(jù) > 【大數(shù)據(jù)基礎(chǔ)知識】大數(shù)據(jù)之Scala是什么?

【大數(shù)據(jù)基礎(chǔ)知識】大數(shù)據(jù)之Scala是什么?

  • 發(fā)布: 大數(shù)據(jù)培訓(xùn)
  • 來源:大數(shù)據(jù)干貨資料
  • 2019-12-27 17:32:06
  • 閱讀()
  • 分享
  • 手機端入口

Scala是什么呢?和我們所熟知的Java語言一樣,它也是一門編程語言。了解過大數(shù)據(jù)的朋友都應(yīng)該聽說過Spark框架,那么Spark的源碼就是用Scala來寫的。所以,如果我們要學(xué)習(xí)Spark,首先要熟悉Scala的語法。并且,如果我們Scala掌握的很好,那么就可以研究Spark源碼了,這是多么令人激動的一件事情呢。

這篇文章中,我們先來了解下Scala的特點吧。

1. 與Java的無縫整合

Scala也是運行在JVM上,所以可以和Java無縫整合。Scala可以在任何地方,調(diào)用Java類或接口中的方法。

2. 類型推斷

熟悉Java的朋友都知道,Java中有8種基本數(shù)據(jù)類型:byte、short、int、long、float、double、boolean、char。并且,聲明變量時都需要指明類型。而在Scala中,聲明變量都是用var或val聲明,不用指明具體的類型。變量的類型會根據(jù)所賦值的數(shù)據(jù)類型自動推斷。在Scala中,不僅變量的類型可以自動推斷,方法的返回值類型大部分情況下也是可以省略的。這些都使得Scala更加靈活和簡約。在Scala中推尚的就是簡約,能省則省。如果您深入學(xué)習(xí)Scala,就會對這一點有更深的體會哦!

3. 并發(fā)和分布式

Scala天生就是并發(fā)和分布式的。Scala集合上可以使用數(shù)據(jù)并行操作。Scala中的Actor可以實現(xiàn)類似于多線程的功能,同時又沒有多線程的并發(fā)問題。

Scala是什么?

4. 特質(zhì)(TRAITS)

Scala中的特質(zhì)類似于Java中的接口,但是功能比接口功能更強大。簡單來說,大家可以把特質(zhì)理解為Java中接口和抽象類的結(jié)合體。

5. 模式匹配

Java中的switch語句,大家都應(yīng)該很熟悉,可以做常量數(shù)據(jù)的匹配。而Scala中的模式匹配,功能要強大的多哦,它不僅可以匹配常量,還可以匹配各種數(shù)據(jù)類型。

6. 高階函數(shù)

提到Scala,我們就不能不說說它的高階函數(shù)了。Scala的一個最大特性是面向?qū)ο,另一大特性就是面向函?shù)了。函數(shù)在Scala中是一等公民,是可以獨立存在的。并且,這里的函數(shù)不僅可以是普通的函數(shù),還可以是高階函數(shù)。那么什么是高階函數(shù)呢?簡單來說,就是如果我們把函數(shù)理解為一種數(shù)據(jù)類型,那么在這里,函數(shù)是可以作為另一個函數(shù)的參數(shù)來傳遞或者作為其他函數(shù)的返回值返回,這就是高階函數(shù)。

文章“【大數(shù)據(jù)基礎(chǔ)知識】大數(shù)據(jù)之Scala是什么?”已幫助

>>本文地址:http://littlerockbway.com/zhuanye/2019/48239.html

THE END  

聲明:本站稿件版權(quán)均屬中公教育優(yōu)就業(yè)所有,未經(jīng)許可不得擅自轉(zhuǎn)載。

1 您的年齡

2 您的學(xué)歷

3 您更想做哪個方向的工作?

獲取測試結(jié)果
  • 大前端大前端
  • 大數(shù)據(jù)大數(shù)據(jù)
  • 互聯(lián)網(wǎng)營銷互聯(lián)網(wǎng)營銷
  • JavaJava
  • Linux云計算Linux
  • Python+人工智能Python
  • 嵌入式物聯(lián)網(wǎng)嵌入式
  • 全域電商運營全域電商運營
  • 軟件測試軟件測試
  • 室內(nèi)設(shè)計室內(nèi)設(shè)計
  • 平面設(shè)計平面設(shè)計
  • 電商設(shè)計電商設(shè)計
  • 網(wǎng)頁設(shè)計網(wǎng)頁設(shè)計
  • 全鏈路UI/UE設(shè)計UI設(shè)計
  • VR/AR游戲開發(fā)VR/AR
  • 網(wǎng)絡(luò)安全網(wǎng)絡(luò)安全
  • 新媒體與短視頻運營新媒體
  • 直播帶貨直播帶貨
  • 智能機器人軟件開發(fā)智能機器人
 

快速通道fast track

近期開班時間TIME