Scala扩展构造函数

时间:2011-11-29 18:18:08

标签: class scala constructor arguments

说我有:

class DecisionTree(private val instances: Array[Instance]){

我想计算另一个实例变量,比如totalEntropy,这需要我做一些进一步的处理,这需要在计算过程中实例化一个hashmap。

我想出了:

private var totalEntropy = (() => {
  val m = collection.mutable.Map()
  ...
})()

但这看起来很尴尬。我应该完全放弃类定义中的参数并使用辅助构造函数吗?这样做的好方法是什么?

1 个答案:

答案 0 :(得分:4)

为什么不呢?

private var totalEntropy = {
  val m = collection.mutable.Map()
  ...
}