scala 学习(一)

作者 Fanfengxiang 日期 2017-09-26
scala 学习(一)

参考教程阿里云栖社区

Scala基本类型

Scala的基本数据类型与Java中的基本数据类型是一一对应的,不同的是Scala的基本数据类型头字母必须大写

常用特殊字符包括

\n 换行符,其Unicode编码为 (\u000A)
\b 回退符,其Unicode编码为 (\u0008)
\t tab制表符 ,其Unicode编码(\u0009)
\” 双引号,其Unicode编码为 (\u0022)
\’ 单引号,其Unicode编码为 (\u0027)
\ 反斜杆,其Unicode编码为(\u005C)

Scala基本类型操作

在Scala中一切操作皆方法,这意味着Scala中的一切皆为对象

算术操作:
//整数求和,编译器会将其转换为(1).+(2)执行
scala> var sumVlaue=1+2
sumVlaue: Int = 3
//前一语句等同于下列语句
scala> var sumVlaue=(1).+(2)
sumVlaue: Int = 3

Scala程序控制结构

while 与 do while 的区别是 后者会先执行一次循环

if 的使用:
val x= if("hello"=="hell") 1 else 0
while 的使用:
def gcdLoop(x: Long, y: Long): Long = {
var a = x
var b = y
while (a != 0) {
val temp = a
a = b % a
b = temp
}
b
}
do while的使用
var line = ""
do {
line = readLine()
println("Read: "+ line)
} while (line != "")
for循环的使用
//还可以加入多个if过滤条件,用;隔开
//每次循环将结果保留,当整个循环执行完毕,所有保留的值将会生成一个集合并返回
//Array[File]到Array[Int]的转换
scala> val forLineLengths =
| for {
| file <- filesHere
| if file.getName.endsWith(".scala")
| line <- fileLines(file)
| trimmed = line.trim
| if trimmed.matches(".*for.*")
| } yield trimmed.length
forLineLengths: Array[Int] = Array()