【发布时间】:2020-12-21 09:57:38
【问题描述】:
我正在尝试在 Scala 中执行以下操作
val buffer1:ArrayBuffer[Element] = ???
val buffer:ArrayBuffer[IElement] = buffer1
其中IElement是我的自定义接口,Element是实现的一个元素。 但是 scala 编译器向我显示了这样的错误:
ArrayBuffer[Element] 类型的表达式不符合预期的 ArrayBuffer[IElement] 类型
我怎样才能让它通过编译器?
scala ArrayBuffer 支持吗?
【问题讨论】:
-
TL;DR;使用协变的不可变集合,例如 List、Vector 或 ArraySeq。 - 如果你不知道方差是什么,那么首先要了解它。
标签: scala arraybuffer