斯卡拉 |字面量
可以分配给变量的任何常量值都称为字面量/常量。字面量是用于描述代码中的常量值的一系列符号。 Scala 中有许多类型的字面量,即字符字面量、字符串字面量、多行字符串字面量、布尔字面量、整数字面量和浮点字面量。
字面量的类型
- 整数字面量:
当在整数末尾添加后缀 L 或 l 时,整数字面量通常是 Int 类型或 Long 类型。 Int类型和Long类型都是整数。
笔记:- Int 类型的范围是(-231 到 230)。
- Long 类型的范围是(-263 到 262)。
- 当整数字面量的数字超出此范围时,就会出现编译时错误。
- 十进制字面量:
这里,允许的数字是从 0 到 9。val x = 37
- 十六进制字面量:
这里,允许的数字是从 0 到 9,使用的字符是从 a 到 f。我们可以使用大写和小写字符。// The hexa-decimal number should be prefix // with 0X or 0x. val x = 0xFFF
整数字面量以两种方式指定:例子:
// Scala program of integer // literals // Creating object object integer { // Main method def main(args: Array[String]) { // decimal-form literal val a = 46 // Hexa-decimal form literal val b = 0xfF // Displays results in // integer form println(a) println(b) } }
输出:46 255
注意:字面量的八进制形式已过时。
- 浮点字面量:
这种类型的字面量是 Double 类型,当在末尾添加后缀 F 或 f 时也是 Float 类型,我们甚至可以通过 d 或 D 后缀来指定 Double 类型。val x = 3.14159
例子:
// Scala program of floating // point literals // Creating object object double { // Main method def main(args: Array[String]) { // decimal-form literal val a = 3.156 // It is also a decimal // form of the literal val b = 0123.34 // Displays results println(a) println(b) } }
输出:3.156 123.34
在这里,我们不能指定八进制或十六进制形式的字面量。
- 字符字面量:
字符字面量要么是可打印的 uni-code字符,要么由转义序列表示。val x = 'b' //character literal in a single quote.
val x = '\u0051' //uni-code representation of character literal, //This uni-code represents Q.
val x = '\n' //Escape sequence in character literals
例子:
// Scala program of character // literal // Creating object object literal { // Main method def main(args: Array[String]) { // Creating a character literal // in single quote val x = 'b' // uni-code representation of // character literal val y = '\u0051' // Escape sequence in character // literals val z = '\n' // Displays results println(x) println(y) println(z) } }
输出:b Q
字符字面量用单引号括起来。
- 字符串字面量:
字符串字面量是一系列字符,可以用双引号括起来。通过使用字符串插值可以顺利处理字符串字面量。val x = "GfG"
例子:
// Scala program of literals // Creating object object literal { // Main method def main(args: Array[String]) { // Creating a string // literal val x = "GeeksforGeeks" // Displays string // literals println(x) } }
输出:GeeksforGeeks
单行字符串字面量用引号括起来。
- 多行字符串字面量:
多行字符串字面量也是一系列字符,但它有多行。val x = """GfG"""
例子:
// Scala program of multi-line // string literals // Creating object object literal { // Main method def main(args: Array[String]) { // Creating a multiple // line string literal val x ="""GeeksforGeeks is a computer science portal""" // Displays multiple // lines println(x) } }
输出:GeeksforGeeks is a computer science portal
多行字符串字面量用三引号括起来。
- 布尔字面量:
布尔字面量只允许两个值,即true和false ,它们是布尔类型的成员。val x = true
例子:
// Scala program of Boolean // literals // Creating object object GfG { // Main method def main(args: Array[String]) { // Assigning true val a = true // Assigning false val b = false // Displays results println(a) println(b) } }
输出:true false