2

これが私がやりたいことです:

object foo {
    def bar = Array(1, 2, 3, 4, 5)
}
class foo (baz = bar) {
}

これにより、コンパイラエラーが発生します。これを達成する別の方法はありますか?

4

3 に答える 3

12
object foo {
    def bar = Array(1, 2, 3, 4, 5)
}

class foo (baz: Array[Int] = foo.bar) {
}
于 2012-11-05T14:50:59.813 に答える
1

補助コンストラクターを使用できます

object Foo {
  def bar = Array(1, 2, 3, 4, 5)
}

class Foo(baz: Array[Int]) {
  def this() = this(Foo.bar)
}
于 2012-11-05T14:57:26.940 に答える
1

二次コンストラクターを書くことができます:

object foo {
    def bar = Array(1, 2, 3, 4, 5)
}

class foo (baz : Array[Int]) {
    def this(){
        this(bar)
    }
}

IDEやコンパイラなしで書かれているので、誰かがタイプミスを修正する必要があります。

于 2012-11-05T14:52:01.427 に答える