scala - scala REPL 打印的是实例名称/id 吗?

标签 scala scala-repl

Tutorial在初始中提到了可变集,但是当添加新元素时,为什么 REPL 会将实例名称从 res4 更改为 res5 呢? 'res' 不是 REPL 打印的实例名称吗?下面是上下文中的代码。 scala 初学者。如果问题很琐碎,请耐心等待。

scala> val set = scala.collection.mutable.Set[Int]()
val set: scala.collection.mutable.Set[Int] = Set()

scala> set += 1
val res0: scala.collection.mutable.Set[Int] = Set(1)

scala> set += 2 += 3
val res1: scala.collection.mutable.Set[Int] = Set(1, 2, 3)

最佳答案

尽管引用没有改变,它意味着res0 == res1。 Scala repl 将为未分配任何名称的表达式生成名称,无论它是否可变。

另外看看docs 。对于 mutable.Set,方法 += 结果为 Set.this.type。由于有一个返回值,因此必须为其分配一些名称。

关于scala - scala REPL 打印的是实例名称/id 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61181797/

相关文章:

Scala REPL 在 Ubuntu 上不起作用

scala - Scala REPL 中的浮点文字错误

linux - 使用 Scala 解释器 API 时保护系统

scala - 我可以定义一个 bang 运算符方法,但我不能在 Scala 中调用它。为什么?

java - Scala - 字符串到 Url

performance - 为什么附加到列表不好?

python - Spark write parquet 不写任何文件,只有_SUCCESS

scala - 变换和展平析取列表