在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 教程/ Scala/ 基本數(shù)據(jù)類(lèi)型
包對(duì)象
Ordered Trait
組合和繼承–定義 final 成員
基本數(shù)據(jù)類(lèi)型
Match 表達(dá)式
類(lèi)和對(duì)象 (三)
操作基本數(shù)據(jù)類(lèi)型
for 表達(dá)式
組合和繼承–重載成員函數(shù)和方法
類(lèi)和對(duì)象 (二)
組合和繼承–定義 factory 對(duì)象
組合和繼承–多態(tài)和動(dòng)態(tài)綁定
Trait 的基本概念
if 表達(dá)式
組合和繼承–抽象類(lèi)
函數(shù)–函數(shù)字面量的一些簡(jiǎn)化寫(xiě)法
while 循環(huán)
組合和繼承–使用組合還是繼承?
訪問(wèn)控制修飾符
Trait 示例–Rectangular 對(duì)象
組合和繼承–定義參數(shù)化成員變量
組合和繼承–定義無(wú)參數(shù)方法
類(lèi)和對(duì)象 (一)
函數(shù)–閉包
函數(shù)–類(lèi)成員函數(shù)
Scala 基本數(shù)據(jù)類(lèi)型的實(shí)現(xiàn)方法
try 表達(dá)式處理異常
選擇瘦接口還是胖接口設(shè)計(jì)?
組合和繼承–小結(jié)
創(chuàng)建新的控制結(jié)構(gòu)
使用 import
為訪問(wèn)控制修飾符添加作用域
Scala 的類(lèi)層次關(guān)系
類(lèi)和對(duì)象 (五)
傳名參數(shù)
柯里化函數(shù)
函數(shù)–頭等公民
組合和組合和繼承–定義 heighten 和 widen 函數(shù)
使用 Package–將代碼放入包中
隱含的 import
所有類(lèi)的公共子類(lèi)–底層類(lèi)型
進(jìn)一步 Scala
函數(shù)–局部函數(shù)
引用包中的代碼
組合和繼承–使用 override 修飾符
組合和繼承–實(shí)現(xiàn)類(lèi) Element 的 above,beside 和 toString()方法
類(lèi)和對(duì)象 (四)
函數(shù)–尾遞歸
沒(méi)有“break”和“continue”的日子
組合和繼承–調(diào)用基類(lèi)構(gòu)造函數(shù)
減低代碼重復(fù)
函數(shù)–函數(shù)–可變參數(shù),命名參數(shù),缺省參數(shù)
起步 Scala
組合和繼承–擴(kuò)展類(lèi)
函數(shù)–部分應(yīng)用的函數(shù)
開(kāi)始神奇的 Scala編程之旅
組合和繼承–概述
Trait 用來(lái)實(shí)現(xiàn)可疊加的修改操作

基本數(shù)據(jù)類(lèi)型

本篇介紹 Scala 支持的基本數(shù)據(jù)類(lèi)型,如果你是個(gè) Java 程序員,你會(huì)發(fā)現(xiàn) Java 支持的基本數(shù)據(jù)類(lèi)型,Scala 都有對(duì)應(yīng)的支持,不過(guò) Scala 的數(shù)據(jù)類(lèi)型都是對(duì)象(比如整數(shù)),這些基本類(lèi)型都可以通過(guò)隱式自動(dòng)轉(zhuǎn)換的形式支持比 Java 基本數(shù)據(jù)類(lèi)型更多的方法。隱式自動(dòng)轉(zhuǎn)換的概念將在后面介紹,簡(jiǎn)單的說(shuō)就是可以為基本類(lèi)型提供擴(kuò)展,比如如果調(diào)用 (-1).abs() ,Scala 發(fā)現(xiàn)基本類(lèi)型 Int 沒(méi)有提供 abs()方法,但可以發(fā)現(xiàn)系統(tǒng)提供了從 Int 類(lèi)型轉(zhuǎn)換為 RichInt 的隱式自動(dòng)轉(zhuǎn)換,而 RichInt 具有 abs 方法,那么 Scala 就自動(dòng)將 1 轉(zhuǎn)換為 RichInt 類(lèi)型,然后調(diào)用 RichInt 的 abs 方法。

Scala 的基本數(shù)據(jù)類(lèi)型有: Byte,Short,Int,Long 和 Char (這些成為整數(shù)類(lèi)型)。整數(shù)類(lèi)型加上 Float 和 Double 成為數(shù)值類(lèi)型。此外還有 String 類(lèi)型,除 String 類(lèi)型在 java.lang 包中定義,其它的類(lèi)型都定義在包 scala 中。比如 Int 的全名為 scala.Int。實(shí)際上 Scala 運(yùn)行環(huán)境自動(dòng)會(huì)載入包 scala 和 java.lang 中定義的數(shù)據(jù)類(lèi)型,你可以使用直接使用 Int,Short,String 而無(wú)需再引入包或是使用全稱(chēng)。

下面的例子給出了這些基本數(shù)據(jù)類(lèi)型的字面量用法,由于 Scala 支持?jǐn)?shù)據(jù)類(lèi)型推斷,你在定義變量時(shí)多數(shù)可以不指明數(shù)據(jù)類(lèi)型,而是由 Scala 運(yùn)行環(huán)境自動(dòng)給出變量的數(shù)據(jù)類(lèi)型:

Welcome to Scala version 2.11.0-M5 (OpenJDK 64-Bit Server VM, Java 1.7.0_25).
Type in expressions to have them evaluated.
Type :help for more information.
scala> var hex=0x5
hex: Int = 5
scala> var hex2=0x00ff
hex2: Int = 255
scala> val prog=0xcafebabel
prog: Long = 3405691582
scala> val littler:Byte= 38
littler: Byte = 38
scala> val big=1.23232
big: Double = 1.23232
scala> val a='A'
a: Char = A
scala> val f ='\u0041'
f: Char = A
scala> val hello="hello"
hello: String = hello
scala> val longString=""" Welcome to Ultamix 3000. Type "Help" for help."""
longString: String = " Welcome to Ultamix 3000. Type "Help" for help."
scala> val bool=true
bool: Boolean = true  
scala>  

Scala的基本數(shù)據(jù)類(lèi)型的字面量也支持方法(這點(diǎn)和 Java 不同,Scala 中所有的數(shù)值字面量也是對(duì)象),比如:

scala> (-2.7).abs
res3: Double = 2.7
scala> -2.7 abs
warning: there were 1 feature warning(s); re-run with -feature for details
res4: Double = 2.7
scala> 0 max 5
res5: Int = 5
scala> 4 to 6
res6: scala.collection.immutable.Range.Inclusive = Range(4, 5, 6)  

這些方法其實(shí)是對(duì)于數(shù)據(jù)類(lèi)型的 Rich 類(lèi)型的方法,Rich 類(lèi)型將在后面再做詳細(xì)介紹。

上一篇:使用 import下一篇:進(jìn)一步 Scala