版權(quán)申明:轉(zhuǎn)載請(qǐng)注明出處。
文章來(lái)源:http://bigdataer.net/?p=255
排版亂?請(qǐng)移步原文獲得更好的閱讀體驗(yàn)
1.scala中的變量
scala中的變量分為不可變變量和可變變量。不可變變量聲明為 val a = 0 可變變量聲明為 var a = 0
可以不用制定變量的類型,scala語(yǔ)言有強(qiáng)大的類型推斷。當(dāng)然,在必要的時(shí)候也可以指定類型,如 val a:String ="hello"
2.scala中的數(shù)據(jù)類型
scala中不刻意區(qū)分基本數(shù)據(jù)類型和引用數(shù)據(jù)類型。同樣的,也不需要包裝類型。
除此之外scala豐富了java中基本數(shù)據(jù)類型的操作,比如對(duì)String提供了StringOps,還提供了如RichInt,RichDouble
等好用的類。scala中數(shù)據(jù)類型之間的轉(zhuǎn)換不用強(qiáng)制轉(zhuǎn)換而是調(diào)用to方法,比如Double轉(zhuǎn)Int直接調(diào)用toInt方法。
3.靜態(tài)方法與apply方法
scala中沒(méi)有靜態(tài)方法,但是有個(gè)類似的特性叫單例對(duì)象,創(chuàng)建方式為object People{……}
scala中apply方法類似于java中的構(gòu)造方法。比如hello(1) 輸出的是"e",實(shí)際上調(diào)用了StringOps的apply方法,
而apply方法的具體實(shí)現(xiàn)是返回第n個(gè)字符。