Scala基础入门(四)初窥门径之Scala中变量的定义

时间:2022-12-12 16:30:52

我们先来看看Java中的变量与常量。在Java中,常量是指在程序运行期间值不能被改变的量,使用final关键字修饰。如

final double PI = 3.141592653;

第一次赋值后,后面不可以再对其再次赋值。Java中的变量在程序运行中可以动态的改变其值,如

int a = 1; int b = 2; a = a + b;

与Java类似的,Scala中对应有 val、var对应常量和变量的定义。

val 常量

Scala中,使用 val 关键字修饰常量,常量一旦赋值,则后续不允许再次进行赋值操作。

val PI = 3.141592653;
PI = 3.14;

第二次对 常量 PI 进行赋值时,会提示编译错误: reassignment to val ,意思是不允许 对 val 修饰的常量重新赋值。

var 变量

Scala 中可以使用 var 来修饰变量。实例中,我们以 phoneNo 变量表示手机号,phoneNo 值 初始化为 18611110000, 因为是 var修饰的可以再次对其赋值 17022224444。

package com.byron4j.scala


/**
*
* 展示Scala 变量的方式
* val: 相当于java中的final常量,一旦给val变量赋值,则val变量不可以再做修改。
* var: var变量相当于Java中的变量,就算赋值后也能再次对其进行修改。
*/

object VariableDemo {
def main(args: Array[String]): Unit = {

val PI = 3.141592653;
//PI = 3.14; //ERROR: reassignment to val

val name = "Byron";
println("My name is " + name);


var phoneNo = "18611110000";
println("My phoneNo is " + phoneNo);
phoneNo = "17022224444";
println("My phoneNo is " + phoneNo);
}
}

Scala 中的表达式

以下代码段,用于输出数组a的元素。

val a = Array(1, 2)
for( key <- a ){
println("遍历输出数组值:" + key);
}

Scala 是一门函数式编程语言,在Scala中大量使用了 val 常量的定义, 在 Scala 中应尽量减少 var 的使用。