Scala 基础
0. 说明
Scala 的基本概念 & 循环
1. 基本概念
1.0 Scala是什么
Scala 是一门多范式的编程语言,设计初衷是要集成面向对象编程和函数式编程的各种特性。
1.1 变量 & 常量
在 Scala 中,使用关键词 "var" 声明变量,使用关键词 "val" 声明常量。
# 变量,可以对值进行更改 var a = 10 # 常量,不能更改 val a = 10
1.2 函数 & 类的区别
- 函数,不需要使用类,直接调用
- 方法需要通过类调用
1.3 产生1 ~ 10的序列
1 to 10 相当于 1.to(10)
1.4 字符串交集
"hello".intersect("world")
1.5 BigInt 类型
var b = BigInt(999999)
1.6 Scala 自增
Scala 不像 Java 那样使用 a++ a-- 作为自增自减
而是使用以下
a += 1
a -= 1
1.7 使用函数
导入 math 下的所有成员
import scala.math._
sqrt(2) //开方
pow(2,3) //幂函数
1.8 apply 方法
"hello".apply(0)
"hello"(0)
1.9 表达式
val x = 2
val b = if(x > 0 ) 1 else -1 // Scala中不包含三元运算
// b:AnyVal = ()
val b = if(x < 0) -1
val x:Unit = () //相当于null
1.10 语句整体
val b = if(x > 0 ){1
}else -1
1.11 粘贴
:paste
ctrl + d //退出粘贴模式
1.12 语句终止
同一行多条语句之间用 " ; " 分隔
val b = {println("a") ;println("bbb");100}
1.13 输出 & 输入
// 输出
println("xxx")
printf("aaa %s bb %s" , "abc" , "def")
// 输入,读取控制台输入
var name = readLine("请输入名字:")
println(name)
1.14 加载 Scala 代码
:load d:\demo\demo.scala
1.15 to & until 的区别
//until, 1 ~ 9
val a = 1 until 10
2. 循环
2.1 while 循环
var n = 0 ; while(n < 10){ println(n) n +=1 }
2.2 for 循环
for(i <- 1 to 10){ println(i) }
2.3 使用 while 和 for 输出 99 表格
while
var r = 1 while(r < 10){ var c = 1 while(c <= r){ printf("%dx%d=%d\t" , c , r , (c * r)) if(c == r) println() c+=1 } r +=1 }
for
for(i <- 1 to 9){ for(j <- 1 to i){ printf("%dx%d=%d\t" , j , i , (i * j)) if(i == j)println() } }
2.4 break & continue
import scala.util.control.Breaks._ for(i <- 1 to 10){ println(i)
if(i % 3 == 0)break ; }
2.5 高级 for 循环 , 迪尔卡积
for(i <- 1 to 3 ; j <- 4 to 6){ printf("%d : %d\n" , i , j ) }
2.6 守卫条件 for 循环
for(i <- 1 to 9 ; j <- 1 to i if( i == 2 * j)){ printf("i=%d,j=%d\r\n" , i , j) }