scala教程:使用 下划线 _ 初始化属性(成员变量)

介绍

scala中,用 _ 初始化成员变量,可以让代码看起来更加简洁。

语法

class Phone{
  var ram:Int = _
  var screen:Double=_
  var good:Boolean = _
  var cpu:String = _

}

作用

注意: 变量必须 指定类型,因为 _ 是根据 类型 进行初始化的

  • Int 类型变量,_ 是 0
  • Double 类型变量,_ 是 0.0
  • Boolean 类型变量,_ 是 false
  • String 类型变量,_ 是 null

val常量,不能用 _

val 常量,必须 手动初始化,不能用 _

例子

object StdClass {

  def main(args: Array[String]): Unit = {
    val phone:Phone = new Phone()
    println(phone.cpu)
    println(phone.screen)
    println(phone.ram)
    println(phone.good)
  }
}

class Phone{
  var ram:Int = _
  var screen:Double=_
  var good:Boolean = _
  var cpu:String = _

}

反编译

scala 赋值 _ ,相当于 java 成员变量的默认值,如下图:

scala 如果赋值,那么就在 java 的构造方法中赋值,如下图:


原文出处:/show_1IX1CYjEievV.html