国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

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

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

Scala 與 Java有著相同的數(shù)據(jù)類型,下表列出了 Scala 支持的數(shù)據(jù)類型:

數(shù)據(jù)類型描述
Byte8位有符號補碼整數(shù)。數(shù)值區(qū)間為 -128 到 127
Short16位有符號補碼整數(shù)。數(shù)值區(qū)間為 -32768 到 32767
Int 32位有符號補碼整數(shù)。數(shù)值區(qū)間為 -2147483648 到 2147483647
Long 64位有符號補碼整數(shù)。數(shù)值區(qū)間為 -9223372036854775808 到 9223372036854775807
Float32位IEEE754單精度浮點數(shù)
Double64位IEEE754單精度浮點數(shù)
Char16位無符號Unicode字符, 區(qū)間值為 U+0000 到 U+FFFF
String字符序列
Booleantrue或false
Unit表示無值,和其他語言中void等同。用作不返回任何結(jié)果的方法的結(jié)果類型。Unit只有一個實例值,寫成()。
Nullnull 或空引用
NothingNothing類型在Scala的類層級的最低端;它是任何其他類型的子類型。
AnyAny是所有其他類的超類
AnyRefAnyRef類是Scala里所有引用類(reference class)的基類

上表中列出的數(shù)據(jù)類型都是對象,也就是說scala沒有java中的原生類型。在scala是可以對數(shù)字等基礎(chǔ)類型調(diào)用方法的。


Scala 基礎(chǔ)字面量

Scala 非常簡單且直觀。接下來我們會詳細介紹 Scala 字面量。

整型字面量

整型字面量用于 Int 類型,如果表示 Long,可以在數(shù)字后面添加 L 或者小寫 l 作為后綴。:

0
035
21 
0xFFFFFFFF 
0777L

浮點型字面量

如果浮點數(shù)后面有f或者F后綴時,表示這是一個Float類型,否則就是一個Double類型的。實例如下:

0.0 
1e30f 
3.14159f 
1.0e100
.1

布爾型字面量

布爾型字面量有 true 和 false。

符號字面量

符號字面量被寫成: '<標識符> ,這里 <標識符> 可以是任何字母或數(shù)字的標識(注意:不能以數(shù)字開頭)。這種字面量被映射成預定義類scala.Symbol的實例。

如: 符號字面量 'x 是表達式 scala.Symbol("x") 的簡寫,符號字面量定義如下:


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

字符字面量

在scala中字符類型表示為半角單引號(')中的字符,如下:

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

其中 \ 表示轉(zhuǎn)移字符,其后可以跟 u0041 數(shù)字或者 \r\n 等固定的轉(zhuǎn)義字符。

字符串字面量

字符串表示方法是在雙引號中(") 包含一系列字符,如:

"Hello,\nWorld!"
"php中文網(wǎng)官網(wǎng):miracleart.cn"

多行字符串的表示方法

多行字符串用三個雙引號來表示分隔符,格式為:""" ... """

實例如下:

val foo = """php中文網(wǎng)
miracleart.cn
www.w3cschool.cc
www.runnoob.com
以上三個地址都能訪問"""

Null 值

空值是 scala.Null 類型。

Scala.Null和scala.Nothing是用統(tǒng)一的方式處理Scala面向?qū)ο箢愋拖到y(tǒng)的某些"邊界情況"的特殊類型。

Null類是null引用對象的類型,它是每個引用類(繼承自AnyRef的類)的子類。Null不兼容值類型。

Scala 轉(zhuǎn)義字符

下表列出了常見的轉(zhuǎn)義字符:

轉(zhuǎn)義字符Unicode描述
\b\u0008退格(BS) ,將當前位置移到前一列
\t\u0009水平制表(HT) (跳到下一個TAB位置)
\n\u000c換行(LF) ,將當前位置移到下一行開頭
\f\u000c換頁(FF),將當前位置移到下頁開頭
\r\u000d回車(CR) ,將當前位置移到本行開頭
\"\u0022代表一個雙引號(")字符
\'\u0027代表一個單引號(')字符
\\\u005c代表一個反斜線字符 '\'

0 到 255 間的 Unicode 字符可以用一個八進制轉(zhuǎn)義序列來表示,即反斜線?\?后跟 最多三個八進制。

在字符或字符串中,反斜線和后面的字符序列不能構(gòu)成一個合法的轉(zhuǎn)義序列將會導致 編譯錯誤。

以下實例演示了一些轉(zhuǎn)義字符的使用:

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

執(zhí)行以上代碼輸出結(jié)果如下所示:

$ scalac Test.scala
$ scala Test
Hello	World


$