【问题标题】:Scala extended constructorScala 扩展构造函数
【发布时间】:2012-01-09 01:57:18
【问题描述】:

说我有:

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

我想计算另一个实例变量,比如totalEntropy,这需要我做一些进一步的处理,这需要实例化一个哈希图作为计算的一部分。

我想出了:

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

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

【问题讨论】:

    标签: class scala constructor arguments


    【解决方案1】:

    为什么不只是这个?

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

    【讨论】:

    • 啊,出于某种原因,我认为{} 用于实例化一种特殊类型的数据结构。
    猜你喜欢
    • 2012-11-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-12
    • 2013-11-15
    • 2019-01-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多