【问题标题】:wrong stop statement declaration after define object定义对象后错误的停止语句声明
【发布时间】:2017-02-23 17:40:09
【问题描述】:

我知道这个问题很简单,但是因为我是 Scala 的新手,所以我无法弄清楚。这是我的示例代码:

package datastructure

sealed trait List[+A]
case object Nil extends List[Nothing]
case class Cons[+A](head: A, tails: List[A]) extends List[A]

object List {
  def sum(ints: List[Int]): Int = ints match {
    case Nil => 0
    case Cons(x, xs) => x + sum(xs)
  }

  def product(ds: List[Double]): Double = ds match {
    case Nil => 1.0
    case Cons(x, xs) => x * product(xs)
  }
}

var a: Int = 3

我不知道我在最后一行总是遇到以下错误:

错误的停止声明声明

这是一个演示插图:

【问题讨论】:

  • 您不能在对象或类之外声明 var。
  • 我正在处理 scala 工作表。所以 scala 仍然阻止我这样做?

标签: scala


【解决方案1】:

您正试图在类或对象之外声明一个变量。

如果您正在处理 Scala 工作表,请摆脱包声明。

package datastructure

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多