详解 Scala 的变量、标识符、数据类型

一、注释

Scala 注释与 Java 一致

// 单行注释

/*
 * 多行注释
 */

/**
 * 文档注释
 */

二、变量与常量

1. 语法

// 变量,类型可以省略
var varName:varClass = value
// 常量,类型可以省略
val valName:valClass = value

2. 案例

// 使用 var/val 才会在类中声明属性,否则只是参数
class Student(name:String, var age:Int) {
    
    def printInfo():Unit = {
   
        println(name + "," + age + "," + Student.school)
    }
}

object TestVariable {
   
    def main(args: Array[String]): Unit = {
   
        // 定义变量和常量的通用语法
        var a: Int = 10
        val b: String = "James"
        
        // 声明变量时,类型可以省略,编译器自动推导,即类型推导
        var a1 = 10
        
        // 变量类型确定后,就不能修改,Scala 是强数据类型语言
        var a2 = 20
        // a2 = "Bob"  // 报错
        
        // 变量声明时,必须要有初始值
        // var a3: Int   // 报错
        
        // var 修饰的变量可改变,val 修饰的变量不可改
        val b1 = 30
        // b1 = 25 // 报错
        
        // var 修饰的对象引用可以改变,val 修饰的对象不可改变,但对象的属性可以改变
        var tom = new Student("Tom", 20)
        tom = new Student("tom", 18)
        
        val rose = new Student("rose", 16)
        // rose = new Student("Rose", 18) // 报错
        rose.age = 18
        // rose.name = "Rose" // 报错
    }
}

三、标识符

Scala 对各种变量、方法、函数等命名时使用的字符序列称为标识符

1. 规则

  • 第一类:以字母或者下划线开头,后接字母、数字、下划线

  • 第二类:以操作符开头,且只包含操作符(+ - * / # !等)

  • 第三类:用反引号 `` 包括的任意字符串,即使是 Scala 关键字(39 个)也可以

    package, import, class, object, trait, extends, with, type, for
    private, protected, abstract, sealed, final, implicit, lazy, override
    try, catch, finally, throw 
    if, else, match, case, do, while, for, return, yield
    def, val, var 
    this, super
    new
    true, false, null
    

2. 案例

object TestIdentifier 
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值