scala-基础之集合和高阶函数-07

17 篇文章 0 订阅

做spark开发 会使用很多spark的高阶函数 所以就在linux服务上使用scala高阶函数,集群又82个节点,我取node40-37为搭建的hadoop集群,node40是主节点,node39-37是datanode。

ssh node40切换到node40后;输入scala,进入命令界面操作。安装教程网上很多,特别简单。

申明一个集合:注意List不能是list,里面可以不是同类型的元素。

List集合所在的包已经被预定义自动引入,所以此处就不需要在引入包了,这里直接使用List实例化对象,其实用List的object对象的apply方法。

使用map函数把list中的每个值都乘以10:

x表示list中每一个元素,map对list中的每一个元素进行遍历操作,由于List中只有一种类型的元素,所以我们在执行map操作的时候可以省略其类型,如下所示:

List集合中只有一个参数的时候,我们可以去掉参数中的括号:

如果看源码会发现:其内部是apply的方式来完成实例化的,也会使用同样的方式实例化Set。

看set相关的操作:Set中不会存储重复的元素

看Tuple的操作:

tuple 访问的时候下标是从1开始的。

看map类型:

Map本身使用的是可变参数的方式,所以可以给Map赋多个值:

scala中:Option类型,Option代表了一个可有可无的值:

Option有两个子类:Some 和None,下面看看Option的使用。

如果map中没有对应的键,可以用上述方法设置默认值

接下来看看filter的使用:

集合进行zip操作:

下面看下partition对集合的切割操作:将集合中的元素按要求分区

使用flatten的将多集合进行扁平化操作:

flatMap是map和flatten操作的集合,先进行map操作后再进行flatten操作:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值