我有案例课
case class Y(y1: Seq[String])
case class X(x1: Seq[Int], x2: Seq[Y])
我可能有一个对象X,其中所有Seq都是ArrayBuffers。我如何重新创建对象X,将所有ArraysBuffers更改为Lists?我一般需要这样做!
使用Shapeless可以完成这种事情吗?
答案 0 :(得分:0)
我不确定我是否正确理解了您的问题,但是简单的copy()
可以为您提供帮助
val ax = X(mutable.ArrayBuffer.empty[Int], mutable.ArrayBuffer.empty[Y])
val bx = ax.copy(x1 = ax.x1.toList, x2 = ax.x2.toList)
输出
ax: X = X(ArrayBuffer(),ArrayBuffer())
bx: X = X(List(),List())