鍍金池/ 教程/ Scala/ Scala數(shù)據(jù)類型
Scala方法重載
Scala模式匹配
Scala throw關(guān)鍵字
Scala提取器
Scala概述
Scala throws關(guān)鍵字
Scala finally塊
Scala正則表達(dá)式
Scala循環(huán)語(yǔ)句
Scala多線程
Scala函數(shù)
Scala final關(guān)鍵字
Scala方法覆蓋
Scala字符串
Scala線程實(shí)現(xiàn)
Scala異常處理
Scala類和對(duì)象
Scala數(shù)據(jù)類型
Scala單例和伴生對(duì)象
Scala構(gòu)造函數(shù)
Scala教程
Scala Case類和對(duì)象
Scala繼承
Scala開(kāi)發(fā)環(huán)境安裝配置
Scala運(yùn)算符
Scala文件I/O
Scala線程方法
Scala變量
Scala try-catch語(yǔ)句
Scala基礎(chǔ)語(yǔ)法
Scala集合
Scala數(shù)組
Scala閉包
Scala訪問(wèn)修辭符
Scala this關(guān)鍵字

Scala數(shù)據(jù)類型

Scala與Java具有相同的數(shù)據(jù)類型,具有相同的內(nèi)存占用和精度。以下是提供Scala中可用的所有數(shù)據(jù)類型的詳細(xì)信息的表格:

序號(hào) 數(shù)據(jù)類型 說(shuō)明
1 Byte 8位有符號(hào)值,范圍從-128127
2 Short 16位有符號(hào)值,范圍從-3276832767
3 Int 32位有符號(hào)值,范圍從-21474836482147483647
4 Long 64位有符號(hào)值,范圍從-92233720368547758089223372036854775807
5 Float 32位IEEE 754單精度浮點(diǎn)值
6 Double 64位IEEE 754雙精度浮點(diǎn)值
7 Char 16位無(wú)符號(hào)Unicode字符。范圍從U+0000U+FFFF
8 String 一個(gè)Char類型序列
9 Boolean 文字值true或文字值false
10 Unit 對(duì)應(yīng)于無(wú)值
11 Null null或空引用
12 Nothing 每種其他類型的亞型; 不包括無(wú)值
13 Any 任何類型的超類型; 任何對(duì)象的類型為Any
14 AnyRef 任何引用類型的超類型

上面列出的所有數(shù)據(jù)類型都是對(duì)象。Scala中沒(méi)有類似Java中那樣的原始類型。 這意味著您可以調(diào)用Int,Long等方法。

Scala基本文字

Scala用于文字的規(guī)則是簡(jiǎn)單直觀的,本節(jié)介紹所有基本的Scala文字。

集成文字

整數(shù)文字通常為Int類型,或Long類型,后跟Ll后綴。這里有一些整數(shù)文字 -

0
035
21 
0xFFFFFFFF 
0777L

浮點(diǎn)文字

浮點(diǎn)文字的類型為Float,后跟浮點(diǎn)類型后綴Ff,否則為Double類型。 這里有一些浮點(diǎn)文字 -

0.0 
1e30f 
3.14159f 
1.0e100
.1

布爾文字

布爾文字:truefalseBoolean類型的成員。

符號(hào)文字

符號(hào)文字'x是表達(dá)式scala.Symbol(“x”)的縮寫(xiě)。符號(hào)是一個(gè)case類,其定義如下 -

ackage scala
final case class Symbol private (name: String) {
   override def toString: String = "'" + name
}

字符文字

字符文字是用引號(hào)括起來(lái)的單個(gè)字符。字符是可打印的Unicode字符或由轉(zhuǎn)義序列描述。 這里有一些字符文字 -

'a' 
'\u0041'
'\n'
'\t'

字符串文字

字符串文字是雙引號(hào)中的一系列字符。字符是可打印的Unicode字符或由轉(zhuǎn)義序列描述。 這里有一些字符串文字 -

"Hello,\nWorld!"
"This string contains a \" character."

多行字符串

多行字符串文字是用三個(gè)引號(hào)""" ... """括起來(lái)的一系列字符。字符序列是任意的,除了它最終可能包含三個(gè)或更多個(gè)連續(xù)的引號(hào)。

字符不一定是可打印的; 換行符或其他控制字符也是允許的。這是一個(gè)多行字符串文字 -

"""the present string
spans three
lines."""

Null值

null值的類型為scala.Null,因此與每個(gè)引用類型兼容。它表示引用一個(gè)特殊的“null”對(duì)象的參考值。

轉(zhuǎn)義序列

以下轉(zhuǎn)義序列在字符和字符串文字中被識(shí)別。

Unicode為0255之間的字符也可以用八進(jìn)制轉(zhuǎn)義來(lái)表示,即反斜杠“\”后面是一個(gè)最多三個(gè)八進(jìn)制字符的序列。以下是顯示幾個(gè)轉(zhuǎn)義序列字符的示例 -

示例

object Test {
   def main(args: Array[String]) {
      println("Hello\tWorld\n\n" );
   }
}

當(dāng)上述代碼被編譯和執(zhí)行時(shí),它產(chǎn)生以下結(jié)果 -

Hello   World

上一篇:Scala正則表達(dá)式下一篇:Scala變量