scala 学习第2弹 说说常量val与变量var,Scala数据类型

本文深入探讨Scala中的`val`常量和`var`变量。`val`修饰的值类型不可修改,引用类型下,引用本身不可变但其内容可变。相比之下,`var`变量可改变。提倡在不需要变动的情况下优先使用`val`以提高代码可读性和利于垃圾回收。此外,Scala中的`lazy`关键字仅适用于`val`,确保在需要时才初始化。
摘要由CSDN通过智能技术生成

 val:常量,相当于Java中的fimal关键字

1. 当val修饰值类型时,不可修改

 

2.当val修饰引用类型,引用不可变,但是引用的内容可以改变

 

var:变量,可以改变

 

注意点:

1.优先使用val(在无需改变时),有利于代码的可读性和垃圾回收

2.lazy关键字只针对val,表示需要使用的时候才进行赋值,用于不确定的初始化工作

3. scala能自动进行变量的类型推断,但它与Java,C等语言一样是静态类型语言

object s2_scalaVal {
  def main(args: Array[String]): Unit = {
    // 变量定义
    var v1 = 1
    var v2: Int = 2

    // 常量定义 val修饰的基本数据类型,在scala中称为值类型,其值不可以修改
    val v3 = 1 // 相当于final修饰
    val v4: Double = 2.0

    // v3 = 4 报错

    println(v1 + v2 + v3 + v4)

    // val 修饰的引用类型,引用不可变,引用的内容可变
    val a1 = Array(1, 2, 3)
    val a2 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值