zoukankan      html  css  js  c++  java
  • Scala 知识点掌握2

    Scala 基础知识点巩固2

    1、集合中常用的函数

    sum / max / min

    # 定义一个List[Int]
    val list1 = List(1,3,4,6,8,9)
    # 取集合中所有元素的和
    list1.sum
    # 取集合中所有元素的最大值
    list1.max
    # 取集合中所有元素的最小值
    list1.min
    2、集合中的其它函数
    • 条件过滤函数 filter(过滤条件表达式)

    # 如取出list1中的偶数
    list1.filter(e => e%2 == 0)
    • 对嵌套集合压平操作 flatten

    # 嵌套集合
    val list2 = List(1,2,3)
    val list3 = List(4,5,6)
    val list4 = List(list2,list3)
    # flatten操作
    list4.flatten   //压平操作是将嵌套在集合内层中的集合的元素放到外层生成新的集合
    • map 对集合中的元素做映射

    # 对list1中所有元素乘以10的操作就用map函数
    list1.map( e => e*10 )
    • flatMap() 相当于是对集合中的元素行进行映射处理,然后再做压平处理

    # 例如将集合中的小写字母转换成相对应的大写字母,并保留小写字母
    val ls1 = List('a','b','c')
    # flatMap操作
    val ls2 = ls1.flatMap(ch => List(ch,ch.toUpper)) // toUpper 将小字符转换成大写字符
    • 对集合中所有元素作条件判断 forall(条件判断)

    # 判断list1中的所有元素是否都大于0,条件成立返回true,否则返回false
    list1.forall(e => e > 0)
    • 对集合中所有元素进行操作 foreach(操作)

    # 将list1集合中的每一个元素换行打印出来
    list1.foreach(println)
    • reduceLeft / reduceRight

    # 从集合左边开始操作 
    list1.reduceLeft(_+_)
    # 从集合右边开始操作
    list1.reduceRight(_+_)
    • foldLeft / foldRight 带初始值的操作

    # foldLeft 
    list1.foldLeft(10)(_+_)
    # foldRight
    list1.foldRight(100)(_-_)

     

  • 相关阅读:
    svmlight、libsvm 和 svmtorch(torch) 极夜.潜的日志 网易博客
    ObjectiveC学习之旅(二)函数、类、作用域
    快速掌握 ObjectiveC (For C/C++ developer)
    MAC系统使用总结
    VM虚拟机安装苹果雪豹操作系统
    asp.net调试遇到的问题
    C#调用WebService
    SqlServer2008建立触发器实例
    sqlserver2008无法登陆问题
    IIS上面部署网站
  • 原文地址:https://www.cnblogs.com/mrfo/p/10346049.html
Copyright © 2011-2022 走看看