【问题标题】:why scala function parameters can't reassign to a new One? [duplicate]为什么scala函数参数不能重新分配给一个新的? [复制]
【发布时间】:2016-10-25 05:31:10
【问题描述】:
  class NodeL(a :Int){
    var value = a
  }

  def change(x :NodeL) = {
    if(x == null) x = new Node
  }

当我使用上面的代码时,编译器在语句“if(x == null) x = new Node”中给我一个错误“reassignment to val”,为什么?

【问题讨论】:

  • 在Scala中,方法参数默认为val
  • @SudhirSingh 不是“默认”,他们根本不可能是var

标签: scala


【解决方案1】:

你不能,方法参数在 scala 中是不可变的(即,它们是 vals

【讨论】:

    猜你喜欢
    • 2014-08-07
    • 2019-11-14
    • 1970-01-01
    • 2018-02-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-03-28
    • 2020-06-18
    相关资源
    最近更新 更多