Scala中的变量

Scala变量

变量被称为对存储位置的引用。 该位置存储程序使用的数据。

根据变量的数据类型,定义分配的内存大小。

Scala变量是内存位置。Scala允许您定义两种类型的变量:

  1. 可变变量

  2. 不变变量

1)可变变量

允许我们随时在代码中更改其值的变量Scala变量是使用var关键字创建的。您可以选择给变量的数据类型加上名字大写的数据类型名称。

    //变量数据类型的语法
    var  variable_name : Data_type = value;

    //没有变量数据类型的语法
    var  variable_name = value;

示例

object MyClass {
    def main(args: Array[String]) {
        var a : Int = 33; 
        var b = 54;
        
        a++;
        
        println("声明为数据类型的变量: " + a );
        println("声明为无数据类型的变量: " + b );
    }
}

输出结果

声明为数据类型的变量: 34
声明为无数据类型的变量: 54

2)不可变变量

使不可变的变量是Scala中的只读变量。这意味着它们的值在整个程序中保持不变。Scala变量是使用val关键字创建的。您可以选择给变量的数据类型加上名字大写的数据类型名称。

    //变量数据类型的语法 
    val  variable_name : Data_type = value;

    //没有变量数据类型的语法
    val  variable_name = value;

示例

object MyClass {
    def main(args: Array[String]) {
        val a : Int = 34; 
        val b = 54;
        //a ++; 在这种情况下是不允许的
        println("immutable 声明为数据类型的变量: " + a );
        println("声明不带数据类型的不可变变量: " + b );
    }
}

输出结果

immutable 声明为数据类型的变量: 34
声明不带数据类型的不可变变量: 54

3)变量的延迟初始化

变量的延迟初始化是在首次访问它们时计算出的那些变量。在scala中,可变变量不能是惰性的。

只有val即不可变变量可以使延迟。这意味着这些变量仅计算一次。

    //变量数据类型的语法
    lazy val  variable_name : Data_type = value;
    
    //没有变量数据类型的语法
    lazy val  variable_name = value;

示例

object MyClass {
    def main(args: Array[String]) {
        lazy val a : Int = 34; 
        val b = 54;
        
        //a ++; 在这种情况下是不允许的
        
        println("不可变变量,其数据类型带有惰性声明: " + a );
        println("声明不带数据类型的不可变变量: " + b );
    }
}

输出结果

不可变变量,其数据类型带有惰性声明: 34
声明不带数据类型的不可变变量: 54