-2

各レコードに n > 22 のキーと値のペアがある json データセットから値を抽出しようとしています。そのために、n 個のメンバー変数を持つケース クラスを実装しました。ただし、scala 2.10.x コンパイラは、「実装の制限: ケース クラスは 22 個を超えるパラメータを持つことはできません」と報告しました。

問題は scala コンパイラの制限にあるようですが、この問題を解決するための迂回路はありますか?

アップデート:

大きなケース クラスを小さなクラスに分解しようとしましたが (ネストされたケース クラスを使用)、その場合、プログラムは json を正しく解析できません。json4s の実装では、そうすることができないと思います。

4

1 に答える 1

5

1: scala 2.11 に切り替える

2: ネストされたケース クラスを使用します。たとえば、「Person」クラスの大きなモデルがある場合、次のように分割できます。

case class Details(firstName: String, lastName: String, ...)
case class Address(state: String, street: String, ...)
case class Person(details: Details, address: Address)
于 2014-11-22T05:20:10.647 に答える