Scala中一些常见代码用法

81 阅读1分钟

一,定义的变量

定义:变量是一种使用方便的占位符,用于引用计算机内存地址,变量创建后会占用一定的内存空间。

1,作用:访问和修改内存数据。

2,关键字:有两个 var 和 val。var 是 variable 的简写,用来定义可变变量,val是 value 的简写,用来定义不可变变量

3,定义一个变量的格式 如下
var | val 变量名:数据类型 = 值

其中,数据类型可以省略

4,定义多个变量
var|val 变量名1, 变量名2, ... = 值****

class day03 {
  def main(args: Array[String]): Unit = {
    //变量
    //     var 变量名:类型 = 值
    //     val 变量名:类型 = 值
    //     类型可以省略
    var i:Int = 1
    val j = 2

    //var:定义可变变量
    i = 2 //i这个变量的值是可以修改的

    //    val: 定义不可变变量
    j = 3 // val 定义的变量不可以被修改  ====== 类似于常量

    println(i)
    println(j)
  }
}

二,标识符

1. 标识符的定义
标识符是编程时使用的名字,可用于给变量、常量、函数、语句块等命名,以建立起名称与使用之间的关系。

2. 标识符的作用
作用是给对象、类、变量和方法命名。名字规则:
(1)标识符不能以数字开头,并且不能是Scala中的关键字(但可以包含关键字)。
(2)符号Scala中也可以看作字母。然而以在Scala中也可以看作字母。然而以开头的标识符被保留作为Scala编译器产生的标识符之用,应用程序应该避免使用$开头的标识符,以免造成冲突。

//变量名-标识符。不能以数字开头,并且不能是关键字

var a0 = 100
var if = 100 // if 是关键字,不能被用做变量名,不能包含特殊符号#,不能有空格,不能以数字开头

三,scala注释与分号

主要有三种注释的方式:
1. 单行注释。 // 注释的内容
2. 多行注释。 /* 注释的内容 /
3. 文档注释。/
* 注释的内容*/

分号: 分号是一个语句的分隔符。用来判断一个语句或表达式是否结束。

要点: 1,虽然Scala具有自动推断分号的功能,但是必须遵守以下规则
2,如果一行只有一条语句或一个表达式时,则分号可以加,也可以不加
3,如果一行有多条语句或多个表达式时,则分号必须填写。

3.png

四,Scala的数据类型概述

变量的数据类型有以下作用:
· 限制一个变量能被赋予的值和这些值的操作;

· 限制一个表达式可产生的值。

Scala的数据类型可以分为“数值类型”和“非数值类型”两大类。

//scala中常用的数据类型

1. 数据类型的首字符都是大写的。

2. 定义变量时可以省略类型,让scala编译器自动推断。

Scala支持的数据类型****

1. Byte: 8位有符号整数。数值区间为-128~127

2. Short:16位有符号整数。数值区间为-32768~32767

3. Int: 32位有符号整数。数值区间为-2147483648~2147483647。默认类型

4. Long: 64位有符号整数。数值区间为-9223372036854775808~ 9223372036854775807

5. Float:32位IEEE 754标准的单精度浮点数

6. Double:64位IEEE 754标准的双精度浮点数。默认值

7. Char:16位无符号Unicode字符, 区间值为U+0000~U+FFFF

2.png

五,类型转换

自动类型转换:
在赋值和运算时,范围小的数据类型会自动转换为范围大的数据类型,再计算

例如:

1 + 1.1 的结果就是Double类型的2.1。

范围类型从小到大排列如下:

byte → short → char → Int -> Long → Float → Double

强制转换:
格式:具体的值.to

class day05 {
  def main(args: Array[String]): Unit = {
    // 类型转换
    // 1,自动类型转换
    // 2,强制转换
    var a = 1

    var b = a + 1.1 // 类型转换,把小的类型转换成大的类型

    // 2,大的类型转换成小的,要强制
    //   格式:  变量.to类型
    var i:Int = (1.1).toInt

    var k:Int = b.toInt

    println(s"i = $i , k = $k")
  }
}

1.png