2
class Thermometer{

  var celsius: Float = _

  def fahrenheit = celsius * 9/5 + 32
  def fahrenheit_ = (f: Float) {
    celsius = (f-32)*5/9
  }

  override def toString = fahrenheit + "F/"+ celsius + "C"
}

引用されたコードは本からの例Programming in Scala 2nd editionです。コンパイルしようとすると、次のエラーが発生します。

scalac Thermometer.scala 
Thermometer.scala:6: error: not found: value f
  def fahrenheit_ = (f: Float) {
                     ^

scala は暗黙的に定義されたゲッターとセッターをサポートしなくなりましたか? コードにエラーはありますか? または、これを行う新しい方法はありますか?

4

1 に答える 1

14

_book のコードには、実際には と の間にスペース文字が含まれていません=:

ここに画像の説明を入力

于 2013-02-19T17:17:14.970 に答える