scala (1) 基础

基本数据类型

Scala 和 Java 一样,有 7 种数值类型 Byte、Char、Short、Int、Long、Float 和 Double(无包 装类型)和 Boolean、Unit 类型.

注意Unit表示无值,和其他语言中的void一样 

val 和 var 区别:前者不可变,相当于final修饰,var 可以变

4.6 条件表达式

/**
* Scala if 条件表达式 */

object ScalaIf extends App{

//if 语句的使用
val faceValue: Int = 99
val res1 = if(faceValue > 90 ) "帅的不要不要的" else "瘪犊子玩意儿" println(res1)

// 8 > 8 不成立, 且代码没有 else 分支, res2 是什么呢 val i = 8
val res2 = if (i > 8) i
println(res2)

val res3 = if (i > 8) i else "前面是整型这里是字符串, 那个 res3 是个啥?" println(res3)

// if ... else if ... else 代码较多时可以使用代码块{} val score = 76
val res4 = {

if(score > 60 && score < 70) "及格"
else if(score >=70 && score < 80) "良好" else "优秀"

} }

4.7 循环语句/yeild 关键字

在 scala 中有 for 循环和 while 循环,

用 for 循环比较多 for 循环语法结构:for (i <- 表达式/数组/集合)

/**
* Scala for循环 */

object ScalaFor extends App {

// 定义个数组, 元素为1 到 6
val array = Array(1, 2, 3, 4, 5, 6)
// 遍历打印数组中的每个元素
for(ele <- array) { // 类似 Java 中的增强 for

println(ele)
   }

// 通过角标获取数组中的元素
// 定义一个 0 到 5 的角标范围
for(i <- 0 to 5) { // 0 to 5 => 会生成一个范围集合 Range(0,1,2,3,4,5)

       println(array(i))
   }

for(i <- 0 until 6) { // 0 until 6 => 会生成一个范围集合 Range(0,1,2,3,4,5) println(array(i))

}

// to 和 until 的区别就是 to 包含为前后都为闭区间, until 为前闭后开区间

// 打印数组中的偶数元素
for(e <- array if e % 2 == 0) { // for 表达式中可以增加守卫

println(e) }

// 观察下面代码输出结果
for(i <- 1 to 3; j <- 1 to 3 if i != j) {

println((10 * i + j) + " ") }

for(e <- array if e % 2 == 0) yeild e )

scala运算符

Scala 中的+ - * / %等操作符的作用与 Java 一样,位操作符 & | ^ >> <<也一样。只是有 一点特别的:这些操作符实际上是方法。例如:
a+b
是如下方法调用的简写:

a.+(b)
a 方法 b 可以写成 a.方法(b)

猜你喜欢

转载自blog.csdn.net/m0_37139189/article/details/83900079