数据类型是数据的分类, 它告诉编译器变量具有哪种类型的值。
例如
, 如果变量具有int数据类型, 则它包含数字值。在Scala中, 数据类型在长度和存储方面类似于Java。在Scala中, 数据类型被视为相同的对象, 因此数据类型的第一个字母为大写字母。
下表显示了Scala中可用的数据类型:
数据类型 | 默认值 | 描述 |
---|---|---|
boolean | false | 对或错 |
字节 | 0 | 8位有符号值。范围:-128至127 |
short | 0 | 16位有符号值。范围:-215至215-1 |
char | ‘\ u000’ | 16位无符号unicode字符。范围:0至216-1 |
int | 0 | 32位有符号值。范围:-231至231-1 |
long | 0L | 64位有符号值。范围:-263至263-1 |
float | 0.0F | 32位IEEE 754单精度浮点数 |
双 | 0.0D | 64位IEEE 754双精度浮点数 |
String | null | 字符序列 |
单元 | – | 没有价值。 |
没有 | – | 它是所有其他类型的子类型, 并且不包含任何值。 |
任何 | – | 它是所有其他类型的超类型 |
AnyVal | – | 它用作值类型。 |
任何参考 | – | 它用作参考类型。 |
注意:Scala不包含Java中的原始类型的概念。
例如:
// Scala program to illustrate Datatypes
object Test
{
def main(args : Array[String])
{
var a : Boolean = true
var a 1 : Byte = 126
var a 2 : Float = 2.45673 f
var a 3 : Int = 3
var a 4 : Short = 45
var a 5 : Double = 2.93846523
var a 6 : Char = 'A'
if (a == true )
{
println( "boolean:lsbin" )
}
println( "byte:" + a 1 )
println( "float:" + a 2 )
println( "integer:" + a 3 )
println( "short:" + a 4 )
println( "double:" + a 5 )
println( "char:" + a 6 )
}
}
输出如下:
boolean:lsbin
byte:126
float:2.45673
integer:3
short:45
double:2.93846523
char:A
Scala中的文字:在这里, 我们将讨论Scala中使用的不同类型的文字。
整体字面量:
这些通常是int类型或long类型(使用的后缀" L"或" I")。一些合法的整数文字是:
02 0 40 213 0xFFFFFFFF 0743L
浮点文字:
它们是浮点类型(使用" f"或" F"后缀)和双精度类型。
0.7 1e60f 3.12154f 1.0e100 .3
布尔文字:
这些是布尔类型, 仅包含true和false。
符号文字:
在Scala中, symbol是案例类。在符号文字中, " Y"与scala.Symbol(" Y")相同。
包scala最终用例类符号私有(名称:String){覆盖def toString:字符串="‘" +名称}
字符字面量:
在Scala中, 字符文字是用单引号引起来的单个字符。这些字符是可打印的Unicode字符, 也由转义字符描述。有效的文字很少, 如下所示:
‘\ b’‘a’’\ r’‘\ u0027’
字符串文字:
在Scala中, 字符串文字是用双引号引起来的字符序列。一些有效的文字, 如下所示:
"欢迎使用\ n lsbin"" \\这是Scala的教程\\"
空值:
在Scala中, null值是小数位数。null类型是指它适用于每种引用类型的方式。它表示为参考值, 它引用特殊的"空"对象。
多行文字
在Scala中, 多行文字是在三重引号之间包含的字符序列。在这一行中, 其他控制字符均有效。一些有效的多行文字如下所示:
"""欢迎来到lsbin \ n, 这是\ n scala编程语言的教程""""