首先,昨天的学习,进行了解了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 {语句块}
将遍历到的值进行存储
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!