Scala 字面量

简介: Scala 字面量

在 Scala 中,字面量(Literals)是直接表示固定值的表达式。

Scala支持各种类型的字面量,涵盖了数值、字符、字符串、布尔值等。

整型字面量

整型字面量用于 Int 类型,如果表示 Long,可以在数字后面添加 L 或者小写 l 作为后缀。

整型字面量可以是十进制、十六进制和八进制。

  • 十进制:42, 0, -99
  • 十六进制:以0x0X开头,如0x2A, 0x0, 0XFF
  • 八进制:Scala 2.10 之前支持八进制字面量,以 0 开头,但在 Scala 2.10 及之后的版本中,八进制字面量被移除。

val decimal = 42

val hex = 0x2A

浮点型字面量

如果浮点数后面有 f 或者 F 后缀时,表示这是一个 Float 类型,否则就是一个 Double 类型的。

  • 双精度:3.14, -0.001, 1.0e-10
  • 单精度:3.14f, -0.001F

val doubleValue = 3.14

val floatValue = 3.14f

布尔型字面量

布尔型字面量有 true 和 false。

val isScalaFun = true

val isSkyGreen = false

符号字面量

符号字面量被写成: '<标识符> ,这里 <标识符> 可以是任何字母或数字的标识(注意:不能以数字开头)。这种字面量被映射成预定义类 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'

其中 \ 表示转义字符,其后可以跟 u0041 数字或者 \r\n 等固定的转义字符。

字符串字面量

在 Scala 字符串字面量使用双引号 " 来定义,如下:

"Hello,\nWorld!"

"菜鸟教程官网:www.runoob.com"

  • 普通字符串:"Hello, World!"
  • 多行字符串:使用三重引号 """ 括起来,可以包含换行符和引号。

多行字符串的表示方法

多行字符串用三个双引号来表示分隔符,格式为:""" ... """

实例如下:

val foo = """菜鸟教程

www.runoob.com

www.runnoob.com

以上三个地址都能访问"""

Null 值

Null是一个特殊的字面量,表示所有引用类型的空值。

空值是 scala.Null 类型。

Scala.Null 和 scala.Nothing 是用统一的方式处理 Scala 面向对象类型系统的某些"边界情况"的特殊类型。

Null 类是 null 引用对象的类型,它是每个引用类(继承自AnyRef的类)的子类。Null不兼容值类型。

val nullValue: String = null

Unit

Unit 类型只有一个实例值,用字面量 () 表示,类似于 Java 中的 void。

val unitValue: Unit = ()

实例

以下是使用不同类型字面量的示例代码:

实例

object LiteralsExample {

 def main(args: Array[String]): Unit = {

   // 数值字面量

   val decimal = 42

   val hex = 0x2A

   val doubleValue = 3.14

   val floatValue = 3.14f

 

   // 字符字面量

   val charA = 'A'

   val charNewLine = '\n'

 

   // 字符串字面量

   val greeting = "Hello, World!"

   val multilineString = """This is
                           |a multi-line
                           |string"
"".stripMargin

 

   // 布尔字面量

   val isScalaFun = true

   val isSkyGreen = false

 

   // 特殊字面量

   val nullValue: String = null

   val unitValue: Unit = ()

 

   // 输出示例

   println(s"Decimal: $decimal, Hex: $hex")

   println(s"Double: $doubleValue, Float: $floatValue")

   println(s"Char: $charA, New Line: $charNewLine")

   println(s"Greeting: $greeting")

   println(s"Multiline String: $multilineString")

   println(s"Is Scala Fun: $isScalaFun, Is Sky Green: $isSkyGreen")

   println(s"Null Value: $nullValue, Unit Value: $unitValue")

 }

}

以上代码编译执行结果为:

Decimal: 42, Hex: 42

Double: 3.14, Float: 3.14

Char: A, New Line: 


Greeting: Hello, World!

Multiline String: This is

a multi-line

string

Is Scala Fun: true, Is Sky Green: false

Null Value: null, Unit Value: ()

目录
相关文章
|
2天前
|
人工智能 运维 数据挖掘
最新版通义千问(Qwen3.8-Max-Preview)功能介绍
2026年7月,阿里云通义千问正式对外开放**Qwen3.8-Max-Preview旗舰预览模型**,作为目前千问系列规格最高、综合性能最强的新一代万亿级AI模型,该模型搭载2.4T超大参数架构,是阿里云首款突破万亿参数的原生多模态旗舰模型,全面覆盖文本、图像、视频、文档多维度处理能力。相较于前代热门Qwen3.7-Max版本,本次预览版实现全方位跨越式升级,在真实工程开发、多智能体长周期任务、全链路办公自动化、海量数据分析等高阶场景中,综合能力已达到全球顶尖模型水准。现阶段该模型已正式开放抢先体验通道,依托阿里云百炼Token Plan、Qoder编码平台、QoderWork办公终端三大专属
1823 0
|
6天前
|
人工智能 安全 测试技术
|
8天前
|
云安全 人工智能 安全
阿里云 Agentic SOC 位居 IDC MarketScape安全运营智能体2026领导者类别
以 Agentic AI 重构安全运营闭环,阿里云云安全在产品能力与市场份额
1201 3
|
3天前
|
人工智能
Qwen3.8抢先体验!正式版即将发布并开源!
千问Qwen3.8即将开源,参数达2.4T,进化速度以“天”计,实力媲美Fable 5。预览版Qwen3.8-Max已上线阿里Token Plan等平台,限时优惠:日间Credits低至1折,夜间更优,个人/团队版月付仅35元起!
496 18
|
2天前
|
人工智能 自然语言处理 数据挖掘
Qwen3.8-Max 预览版全解析:2.4 万亿参数旗舰模型,Token Plan 限时优惠指南
Qwen3.8-Max-Preview是通义千问Qwen3系列旗舰MoE大模型,参数达2.4万亿,综合推理能力居行业第一梯队。支持思考/快速双模式,擅长大模型五大高难场景。现于阿里云百炼Token Plan、Qoder及QoderWork上线体验,个人版低至39元/月。在阿里云百炼官网:https://t.aliyun.com/U/fPVHqY 免费领取千万Tokens
415 1
Qwen3.8-Max 预览版全解析:2.4 万亿参数旗舰模型,Token Plan 限时优惠指南
|
9天前
|
缓存 UED 开发者
Codex109天重置23次,明天还要再送一次
Codex近109天完成23次额度重置,7月14日将迎来第24次。Tibo高频响应用户反馈:优化GPT-5.6高消耗问题、补发失效福利、调整重置时间——形成“反馈→回应→修复→补偿”正向闭环,彰显以用户为中心的产品哲学。(239字)
798 12
|
2天前
|
人工智能 测试技术 语音技术
Qwen-Audio-3.0-TTS 正式发布!AI 语音从 “能说话” 升级到 “会带情绪表达”
阿里云发布Qwen-Audio-3.0-TTS语音合成大模型,支持细粒度标签控制(如[gasp][angry])、freestyle自由风格、16种语言及20种方言,声学鲁棒性强。含Flash(首包延时300ms)和Plus(全球榜单冠军)双版本,已在百炼平台开放调用。在阿里云百炼官网:https://t.aliyun.com/U/fPVHqY 免费领取千万Tokens
414 0
|
12天前
|
存储 人工智能 JSON
Qwen 本地部署搭配 ComfyUI 生成 AI 漫剧完整实操指南(小白零基础可落地,零成本无限生成+角色一致性天花板)
2026全网最优本地漫剧流水线:零成本、离线运行、角色统一、低配(8G显卡)可跑。融合Qwen本地大模型+ComfyUI双引擎,实现剧本生成→分镜绘图→动态成片全自动,隐私安全、无审核限流,新手30分钟上手,日更无忧。(239字)
|
8天前
|
数据采集 机器学习/深度学习 人工智能
田间杂草定位与检测4200张YOLO智慧农业数据集分享
本数据集含4200张真实农田图像,YOLO格式,单类别(杂草)高质量标注,覆盖多作物、多光照、多生长阶段等复杂场景,专为智慧农业杂草检测与智能除草设备研发设计,支持YOLOv5/v8/v10等主流模型训练。
384 94