当前位置: 首页 > 文档资料 > Scala 中文文档 >

数据类型

优质
小牛编辑
135浏览
2023-12-01

Scala具有与Java相同的所有数据类型,具有相同的内存占用和精度。 以下表格提供了Scala中可用的所有数据类型的详细信息 -

Sr.No数据类型和描述
1

Byte

8位有符号值。 范围从-128到127

2

Short

16位有符号值。 范围-32768到32767

3

Int

32位有符号值。 范围-2147483648至2147483647

4

Long

64位有符号值。 -9223372036854775808至9223372036854775807

5

Float

32位IEEE 754单精度浮点数

6

Double

64位IEEE 754双精度浮点数

7

Char

16位无符号Unicode字符。 范围从U + 0000到U + FFFF

8

String

一系列的Chars

9

Boolean

无论是文字真实还是文字虚假

10

Unit

对应没有价值

11

Null

null或空引用

12

Nothing

每种其他类型的子类型; 不包括任何价值

13

Any

任何类型的超类型; 任何对象都是Any类型

14

AnyRef

任何引用类型的超类型

上面列出的所有数据类型都是对象。 Java中没有原始类型。 这意味着您可以在Int,Long等上调用方法。

Scala Basic Literals

Scala用于文字的规则简单直观。 本节介绍所有基本的Scala文字。

积分文字

整数文字通常是Int类型,或者类型为Long,后跟L或l后缀。 这是一些整数文字 -

0
035
21 
0xFFFFFFFF 
0777L

浮点文字

浮点文字的类型为Float,后跟浮点类型后缀F或f,否则为Double类型。 这里有一些浮点文字 -

0.0 
1e30f 
3.14159f 
1.0e100
.1

布尔文字

布尔文字truefalse是Boolean类型的成员。

符号文字

符号文字'x是表达式scala.Symbol("x")的简写。 符号是一个案例类,定义如下。

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

字符文字

字符文字是用引号括起来的单个字符。 该字符是可打印的Unicode字符或由转义序列描述。 这是一些字符文字 -

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

字符串文字

字符串文字是双引号中的字符序列。 字符是可打印的Unicode字符或由转义序列描述。 这是一些字符串文字 -

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

Multi-Line Strings

多行字符串文字是用三引号“”“......”“”括起来的字符序列。 字符序列是任意的,除了它可能只在最后包含三个或更多连续引号字符。

字符不一定是可打印的; 也允许换行或其他控制字符。 这是一个多行字符串文字 -

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

空值

null值的类型为scala.Null ,因此与每个引用类型兼容。 它表示引用特殊“空”对象的引用值。

转义序列 (Escape Sequences)

在字符和字符串文字中可识别以下转义序列。

转义序列统一描述
\b\u0008backspace BS
\t\u0009horizontal tab HT
\n\u000cformfeed FF
\f\u000cformfeed FF
\r\u000dcarriage return CR
\"\u0022double quote "
\'\u0027single quote .
\\\u005cbackslash (反斜杠)

Unicode在0到255之间的字符也可以用八进制转义表示,即反斜杠“\”后跟最多三个八进制字符的序列。 以下是显示少数转义序列字符的示例 -

例子 (Example)

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

编译并执行上述代码时,会产生以下结果 -

输出 (Output)

Hello   World