第2章 Scala变量和数据类型

第2章 变量和数据类型

2.1 注释

Scala注释使用和Java完全一样。注释是一个程序员必须要具有的良好编程习惯。将自己的思想通过注释先整理出来,再用代码去体现。

2.1.1 单行注释

// 单行注释

2.1.2 多行注释

/*
   多行注释
*/

2.1.3 文档注释

/**
  文档注释
 */

2.2 变量

变量是一种使用方便的占位符,用于引用计算机内存地址,变量创建后会占用一定的内存空间。基于变量的数据类型,操作系统会进行内存分配并且决定什么将被储存在保留内存中。因此,通过给变量分配不同的数据类型,你可以在这些变量中存储整数,小数或者字母。

2.2.1 语法声明

变量的类型在变量名之后等号之前声明。

scala中变量声明(1) => var 变量名 : 变量的类型 = 变量的值
scala中变量声明(2) => val 变量名 : 变量的类型 = 变量的值
object Scala02_Var {
   

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

        // TODO 变量
        // scala中变量声明(1) => var 变量名 : 变量的类型 = 变量的值
        var name1 : String = "zhangsan"

        // scala中变量声明(2) => val 变量名 : 变量的类型 = 变量的值
        val name : String = "lisi"

        println(name)

    }
}

变量的类型如果能够通过变量值推断出来,那么可以省略类型声明,这里的省略,并不是不声明,而是由Scala编译器在编译时自动声明编译的。

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

        // TODO 变量
        // 强类型的语言中,类型的声明应该前后统一,如果我明确的知道变量的取值是多少,那么变量的类型就确定了。
        // 马丁说:我能猜出来的语法,你不要写了,我帮你。
        // 能够通过取值推断变量的类型,那么变量类型可以省略
        // 如果使用多态,那么类型不能省略
        var name : String = "zhangsan"
        var name1 : Object = "lisi"
        println(name1)
    }

2.2.2 变量初始化

Java语法中变量在使用前进行初始化就可以,但是Scala语法中是不允许的,必须显示进行初始化操作。

object Scala02_Var_2 {
   

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

        // TODO 变量
        // scala中声明变量一定要初始化
        val name : String = "123"

    }
}

2.2.3 可变变量var

值可以改变的变量,称之为可变变量,但是变量类型无法发生改变, Scala中可变变量使用关键字var进行声明

object ScalaVariable {
   

  def main(args: Array[String]): Unit = {
   
		// 用户名称
		var username : String = "zhangsan"
 		username = "lisi" // OK
 		username = true // Error
  }
}

2.2.4 不可变变量val

值一旦初始化后无法改变的变量,称之为不可变变量。Scala中不可变变量使用关键字val进行声明, 类似于Java语言中的final关键字

object ScalaVariable {
   

  def main(args: Array[String]): Unit = {
   
		// 用户名称
		val username : String = "zhangsan"
		username = "lisi" // Error
		username = true // Error
  }
}

思考两个问题:

  • val和var两个修饰符,哪一个会推荐使用?
  • Java中的字符串为何称之为不可变字符串?

2.3 标识符

Scala 可以使用两种形式的标志符,字符数字和符号。

  • 字符数字使用字母或是下划线开头,后面可以接字母或是数字,符号" " 在 S c a l a 中 也 看 作 为 字 母 。 然 而 以 " "在 Scala 中也看作为字母。然而以" "Scala
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值