Scala语言(二)

控制结构

if语句

 

while循环

 

for循环

 

 

异常处理

受检异常是在写代码的时候,编程人员必须明确,自己就能清楚地知道,代码在执行过程当中可能会抛出哪些错误。并且对每一个可能抛出的错误都要给出处理方法

不受检异常不是在编译阶段抛出来,是在运行阶段抛的

 

Scala把所有异常都当做不受检异常。 

 

Scala对循环控制没有break和continue

 

数据结构

数组

引用数组元素是用圆括号()

 

元组

       数组是都是同一类型的值的集合。但如果我们需要一个集合中元素的类型是不相同的,这个时候就必须用到一个叫元组的数据结构

在Spark编程中会经常用到元组

 

容器

scala.colletion封装了一些超类或特质,定义了一些可变容器和不可变的一些通用操作

这些还属于特质,具体的容器类会从特质往下继承

 Scala当中没有接口的概念,由特质概念和接口相似

 

最顶层有一个叫Traversable的特质

List类(举个例子)是层层继承下来的

Traversable特质中定义的抽象方法foreach,用来遍历容器内部的元素,那么任何一个容器类,是从Traversable继承下来的,那你在实现容器类的时候,必须把foreach方法实现了。所以seq、set、map的区别就在于元素的索引方式不同(就是对于foreach的实现方式不同)

            

 

List

列表属于具体的容器类了,而不是特质了

特点:

声明的时候就要初始化

 

 

构造列表的常用方法

没有覆盖原来旧的strList,生成新的副本

得到

快速得到一个列表

 

向量

:+与+:

 

Range

        一种特殊的带索引的不可变数字等差序列

 

Range可以支持不同类型的数值序列

 

until是不包含右重点

 

集合

var mySet = Set("Hadoop","Spark")是生成不可变集的对象

mySet是可变的变量(开始指向了不可变集,后来又指向了一个新的增加了Scala的不可变集)

生成可变集

不可变类型的变量指向了一个可变集。这次是指针没有变,但是指针指向的数据集变了

 

映射(Map)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值