zoukankan      html  css  js  c++  java
  • scala学习总结(4)

    1.集合
    -存放单值类型
    *Seq
    有序,可重复
    *Set
    无序,不能重复
    -存放键值对
    *Map
    以k-v键值对的形式存放数据,其中key无序不能重复

    -对于几乎所有的集合类,Scala都同时提供了可变和不可变的版本,分别位于以下两个包
    *不可变集合:scala.collection.immutable
    对集合进行添加或者删除操作的时候,会创建新的集合对象

    *可变集合: scala.collection.mutable
    对集合进行添加或者删除操作的时候,直接在原来的集合上操作,不会创建新的集合对象

    -数组
    Array
    ArrayBuffer
    -Seq
    List
    ListBuffer

    -Set

    -Map
    当调用map.get方法的时候,返回的Option类型数据,Option有两个子类型,一个Some,另一个None
    可以帮我们避免对空值进行处理的情况,使用getOrElse函数,给空值赋默认值

    -元组
    将多个相同或者不相同的类型数据组合在一起
    (数据1,数据2)
    Map集合中kv键值对就是一个特殊的元素,只有两个元素,我们称之为对偶

    2.集合常用函数
    -基本属性和常用操作
    (1)获取集合长度
    length
    (2)获取集合大小
    size
    (3)循环遍历
    foreach
    (4)迭代器
    iterator
    (5)生成字符串
    mkString
    (6)是否包含
    contains
    -衍生集合
    (1)获取集合的头
    head
    (2)获取集合的尾(不是头的就是尾)
    tail
    (3)集合最后一个数据
    last
    (4)集合初始数据(不包含最后一个)
    init
    (5)反转
    reverse
    (6)取前(后)n个元素
    take|takeRight
    (7)去掉前(后)n个元素
    drop|dropRight
    (8)并集
    union
    (9)交集
    intersect
    (10)差集
    diff
    (11)拉链
    zip
    (12)滑窗
    sliding

    -集合计算初级函数
    (1)求和
    sum
    (2)求乘积
    product
    (3)最大值
    max
    (4)最小值
    min
    (5)排序
    sorded|sortBy|sortWith

    -集合计算高级函数
    (1)过滤 filter(函数:指定过滤条件)
    遍历一个集合并从中获取满足指定条件的元素组成一个新的集合

    (2)转换/映射 map

    (3)扁平化 flatten :::
    将集合中元素由整体转换为个体的过程

    (4)扁平映射 flatMap
    先映射再进行扁平化处理

    (5)分组 gruopBy
    按照一定的分组规则,将集合中的元素放到不同的组中

    (6)简化|规约
    >对集合内部元素之间进行聚合
    >reduce 聚合的数据类型一致
    >reduceLeft|reduceRight 聚合的数据类型可以不一致

    (7)折叠
    >对外部元素和集合内部元素之间进行聚合
    >fold 聚合的数据类型一致
    >foldLeft|foldRight 聚合的数据类型可以不一致

    -两个map集合之间的合并

  • 相关阅读:
    鱼眼拼接实验
    多字节字符集 unicode字符集
    GPU编程接口
    零基础学java第一天
    最牛的减肥方法
    近期思考
    c++的stl容器
    蓝桥杯历年穷举题
    git简单指令3
    git简单指令2
  • 原文地址:https://www.cnblogs.com/guziteng1/p/14272538.html
Copyright © 2011-2022 走看看