02 Scala 变量的基本介绍

变量

1. 变量使用说明

  1. scala 要求变量声明时初始化。
  2. 声明变量时,类型可以省略(编译器会自动进行类型推导)。
  3. 类型确定后,就不可以再修改了(Scala 是强数据类型语言)。
  4. 在声明/定义一个变量时,可以使用 var 或者 val 来修饰, var 修饰的变量可改变,val 修饰的变量不可改。
  5. val 没有线程安全问题,因此效率高,推荐使用。
  6. val 修饰的变量在编译后,等同于加上了 final
  7. var 修饰的对象引用可以改变,val 修饰的则不可改变,但对象的状态(值)是可以改变的。

2. 数据类型

  1. ScalaJava 有着相同的数据类型,但是在 Scala 中数据类型都是对象。

  2. Scala 数据类型分为两大类 AnyVal(值类型)AnyRef(引用类型)

  3. Scala 数据类型体系图。

    • Scala 中有一个根类型 Any ,是所有类的父类。
    • Null 类型是 scala 的特别类型,它只有一个值 null, 是所有 AnyRef 类型的子类。
    • Nothing 类型是所有类的子类。
    • Scala 中依然遵守:低精度的值,向高精度的值自动转换,即隐式转换。
  4. 可以直接给 Char 赋一个整数,进行输出时,会按照对应的 unicode 字符输出。

  5. Char 类型可以进行运算,相当于一个整数。

  6. Unit 类型表示无值,相当于 voidUnit 只有一个实例值,为 ()

3. 值类型隐式转换

  1. byte,short,char 他们三者可以计算,在计算时首先转换为 int 类型。
  2. 自动提升原则:表达式结果的类型自动提升为操作数中最大的类型。
  3. Char 类型可以保存 Int 的常量值,但不能保存 Int 的变量值,需要强转。
  4. ByteShort 类型在进行运算时,当做 Int 类型处理。

4. 值类型与 String 类型的转换

4.1 基本类型转 String 类型

  1. 将基本类型的值 + "" 即可 。

4.2 String 类型转基本类型

  1. 通过 str.toXxx 方法即可。
  2. 注意:"12.5".toInt 会抛出异常,而不会进行截取。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值