scala中变量和数据类型

1.1scala注释

scala中的注释和java中的完全一样

1.1.1 单行注释

package com.yang.bigdata.scala.Test01
object Test {
  def main(args: Array[String]): Unit = {
    //单行注释
  }
}

1.1.2多行注释

package com.yang.bigdata.scala.Test01
object Test {
  def main(args: Array[String]): Unit = {
    /*
      多
      行
      注
      释
     */
  }
}

1.1.3文档注释

package com.yang.bigdata.scala.Test01
object Test {
  /**
    * 
    * @param args
    */
  def main(args: Array[String]): Unit = {
  
  }
}

1.2变量

1.2.1可变变量和不可变变量

Scala有两种变量,val和var。

val类似于Java里的final变量。一旦初始化了,val就不可改变。

var如同Java里面的非final变量,可以被多次赋值。

object Test {

  def main(args: Array[String]): Unit = {
//    var | val 变量名 :变量类型 = 变量值
    //var 可以多次赋值
    var name : String = "zhangsan"
    name = "lisi"
    //val 不可修改
    val age : Int = 18
    age = 22  // 报错 Reassignment to val
  }
}

1.2.2 数据类型的省略

Scala是和java一样,都属于强类型语言 
强类型语言中,类型的声明应该前后统一,
如果明确知道变量取值是多少 那么变量的类型的确定了
如果我能猜测出来 的语法 就可以不用写了
能够通过推断出来的变量类型,才可以省略不写
eg:多态

    var name :String = "zhangsan"

    val i = 123

    val bool = true

    val lisi = "lisi"

1.3 scala标识符

scala 和 java 中的标识符 基本一致

      1. 数字 字母 下划线 $
      2. 数字不能 开头
      3. 不能使用关键字 和 保留字
      4. 区分大小写
      5. 长度没限制
但
    scala 中 !@#¥%……&*()+-/ 都可以
    马丁(Scala创始人) 在编译时 将特色符号 编译为转换的变量名 这个变量名 以$符 开头
    一般情况 下 标识符 起名时候 不能使用 $ 开头
    scala 中的标识符 不需要记 错了 改就可以了
    并且在scala中支持颜文字 但是
    val :-> = "lisi"
    println(:->)
// 和Java一样的标识符命名规则
val name = "zhangsan" // OK
val name1 = "zhangsan0"   // OK
//val 1name = "zhangsan0" // Error
val name$ = "zhangsan1" // OK
val $name = "zhangsan2" // OK
val name_ = "zhangsan3" // OK
val _name = "zhangsan4" // OK
val $ = "zhangsan5"     // OK
val _ = "zhangsan6"     // OK
//val 1 = "zhangsan6"     // Error
//val true = "zhangsan6"  // Error

// 和Java不一样的标识符命名规则
val + = "lisi" // OK
val - = "lisi" // OK
val * = "lisi" // OK
val / = "lisi" // OK
val ! = "lisi" // OK
//val @ = "lisi" // Error
val @@ = "lisi" // OK
//val # = "lisi" // Error
val ## = "lisi" // OK
val % = "lisi" // OK
val ^ = "lisi" // OK
val & = "lisi" // OK
//val ( = "lisi" // Error
//val ( = "lisi" // Error
//val ) = "lisi" // Error
//val = = "lisi" // Error
val == = "lisi" // OK
//val [ = "lisi" // Error
//val ] = "lisi" // Error
//val : = "lisi" // Error
val :: = "lisi" // OK
//val ; = "lisi" // Error
//val ' = "lisi" // Error
//val " = "lisi" // Error
val "" = "lisi" // OK
val < = "lisi" // OK
val > = "lisi" // OK
val ? = "lisi" // OK
val | = "lisi" // OK
val \ = "lisi" // OK
//val ` = "lisi" // Error
val ~ = "lisi" // OK
val :-> = "wangwu" // OK
val :-< = "wangwu" // OK
// 切记,能声明和能使用是两回事

1.3.1scala中的关键字或保留字

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值