0Pricing
Scala for Backend Engineering & Functional Programming · 课时

基本类型和字面量

数字、布尔值和字符。

基本类型和字面量 是 CoddyKit 上的免费 Scala for Backend Engineering & Functional Programming 课时。 这是第 2 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Scala for Backend Engineering & Functional Programming 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Scala for Backend Engineering & Functional Programming 课程共包含 4 节课。

Scala 的基本类型

Scala 提供了一组小型的内置值类型,您会经常使用它们。

  • Int、Long:整数
  • Double、Float:小数
  • Boolean、Char、String

每种类型都有用于直接在代码中写出值的字面量语法。

Int 字面量

没有小数点的整数默认是 Int,即 32 位有符号整数。

您可以使用下划线分隔数字,以提高可读性。

object Main extends App {
  val year = 2026
  val big = 1_000_000
  println(year + big)
}

Long 字面量

当数字超出 Int 的范围,或者您只想使用 64 位时,可以为数字添加 L 后缀,使其成为 Long。

为清晰起见,建议使用大写 L,而不是小写 l。

val population: Long = 8_000_000_000L
val id = 42L

Double 和 Float 字面量

带小数点的数字默认是 Double。添加 f 后缀即可使其成为 Float。

您也可以使用带 e 的科学计数法。

object Main extends App {
  val price = 19.99
  val rate = 0.5f
  val mass = 6.02e23
  println(price)
}

Boolean 字面量

Boolean 恰好包含两个字面量中的一个:true 或 false。

布尔值用于驱动条件、比较以及 && 和 || 等逻辑运算符。

object Main extends App {
  val isReady = true
  val isDone = false
  println(isReady && !isDone)
}

Char 字面量

Char 是单个 16 位 Unicode 字符,使用单引号书写。

不要将它与只有一个字母的 String 混淆,后者使用双引号。

val grade = 'A'
val newline = '\n'
val letter: Char = 'z'

String 字面量

String 是使用双引号书写的文本。您可以使用 + 连接字符串。

\n 和 \t 等转义序列可以在普通字符串中使用。

object Main extends App {
  val first = "Func"
  val second = "tional"
  println(first + second)
}

字符串插值

在字符串前加上 s,即可使用 $name 或 ${expr} 嵌入表达式。

这比使用 + 进行拼接更简洁,也是构建文本的惯用方式。

object Main extends App {
  val user = "Sam"
  val items = 3
  println(s"$user has ${items * 2} items")
}

多行字符串

三重引号 """...""" 可以创建原始多行字符串,其中的转义序列不会被处理。

它非常适合表示 JSON、SQL 或任何跨越多行的文本块。

val sql = """SELECT *
FROM users
WHERE active = true"""

Unit 类型

Unit 是 Scala 对“没有有用值”的表示方式,类似于 Java 中的 void。

它唯一的字面量是 ()。仅用于产生副作用的函数(如 println)会返回 Unit。

object Main extends App {
  val nothing: Unit = ()
  val result = println("side effect")
  println(result)
}

类型构成层次结构

所有这些值类型都继承自 AnyVal;AnyVal 与 AnyRef 一起位于 Any 之下,而 Any 是所有 Scala 类型的根。

在最底层,Nothing 是所有类型的子类型。这种统一的层次结构使得每个表达式都有类型。

快速检查

哪个字面量与哪个类型相匹配?

回顾

您已经了解了 Scala 的核心值类型及其字面量。

  • 整数:Int、Long(使用 L)。
  • 小数:Double、Float(使用 f)。
  • Boolean、Char(单引号)、String(双引号)。
  • s"..." 插值,以及作为空值的 Unit。

常见问题解答

「基本类型和字面量」课时是免费的吗?

是的 — 「基本类型和字面量」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Scala for Backend Engineering & Functional Programming 课程的其余内容,请升级到 CoddyKit PRO。 Scala for Backend Engineering & Functional Programming 课程共包含 4 节课。

「基本类型和字面量」这节课中我会学到什么?

数字、布尔值和字符。 你通过在浏览器中直接运行的动手代码来练习 Scala for Backend Engineering & Functional Programming,全天候 AI 导师会在你学习这节课的过程中回答你的问题。

学习 Scala for Backend Engineering & Functional Programming 需要有经验吗?

无需任何先前经验。CoddyKit 上的 Scala for Backend Engineering & Functional Programming 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 2 节课,共 4 节。

「基本类型和字面量」课时需要多长时间?

大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。

我能在这节 Scala for Backend Engineering & Functional Programming 课中编写并运行代码吗?

能。每节 Scala for Backend Engineering & Functional Programming 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。

此课程中的所有课时

  1. val 与 var
  2. 基本类型和字面量
  3. 类型推断
  4. 以表达式为主,而非语句
← 返回 Scala for Backend Engineering & Functional Programming