首先,昨天的学习,进行了解了Spark的生态等等的相关概念,spark底层是进行Scala语言的编写,所以进行学习了Scala语言的一些基础,并做了一些整理:
两种变量:
val:不可更改,但必须初始化
var:可以更改,但必须初始化
val指向不能变,
声明变量
会自动推断变量:

完整版声明:名称 : 类型

基本数据类型
都是类,没有变量,都是对象
scala语言会自动对你的类型进行推断
|
Byte |
8位有符号补码整数。数值区间为 -128 到 127 |
|
Short |
16位有符号补码整数。数值区间为 -32768 到 32767 |
|
Int |
32位有符号补码整数。数值区间为 -2147483648 到 2147483647 |
|
Long |
64位有符号补码整数。数值区间为 -9223372036854775808 到 9223372036854775807 |
|
Float |
32 位, IEEE 754 标准的单精度浮点数 |
|
Double |
64 位 IEEE 754 标准的双精度浮点数 |
|
Char |
16位无符号Unicode字符, 区间值为 U+0000 到 U+FFFF |
|
String |
字符序列 |
|
Boolean |
true或false |
|
Unit |
表示无值,和其他语言中void等同。用作不返回任何结果的方法的结果类型。Unit只有一个实例值,写成()。 |
|
Null |
null 或空引用 |
|
Nothing |
Nothing类型在Scala的类层级的最底端;它是任何其他类型的子类型。 |
|
Any |
Any是所有其他类的超类 |
|
AnyRef |
AnyRef类是Scala里所有引用类(reference class)的基类 |
操作符:都属于操作对象的方法
没有++ -- 方法,可以+=1;-=1进行实现
Range
Range:创建一个数字序列
创建一个1到5的数字序列

创建一个1到5的数字序列,不包括5

创建一个1到10,步长2的序列

创建一个Float类型的数值序列,从0.5f到5.9f,步长为0.8f,很少用,因为这个一遍进行循环遍历来使用

控制台读取数据
进行导入包:在进行使用

控制台输出数据

print、println、printf
写入文件:需要注意的是:若你写入文件名称为相对路径,你创建的文件生成在你进入scala前的目录
控制结构:
while,if-else,和java一样
for循环不一致:
for(变量 <- 表达式)语句块


如不希望出现某个值,可以使用i守卫if进行选择

可以支持多个循环
for(i <- 1 to 5; j <- 1 to 3) println(i*j)

可以对每一个生成器添加守卫
for推导:
for(变量 <- 表达式) yield {语句块}
将遍历到的值进行存储

浙公网安备 33010602011771号