Scala语言与spark常用函数使用说明

目录

1.Scala函数方法

1.1Map()方法

1.2foreach()方法

1.3filter()方法

1.4flatten()方法

1.5flatmap()方法

1.6.groupBy()方法

2.spark编程基础

2.1parallelize()

2.2makeRDD()

2.3textfile()

2.4Map()方法

2.5sortBy()方法

2.6collect()方法

2.7flatMap()

2.8take()方法

2.9union()方法

3.0distinst()方法

3.1cartesian() 方法

3.2reduceByKey()

3.3groupBykey()

3.4combineByKey() 

3.5join()方法


1.Scala函数方法

1.1Map()方法

map()是一种高阶函数,通常用于对集合(比如List、Array等)中的每个元素进行映射转换。它接受一个函数作为参数,该函数会被应用到集合中的每个元素上,并返回一个新的集合,其中包含了原集合中每个元素经过函数转换后的结果

代码:

object one {
  def main(args: Array[String]): Unit = {
    // 定义一个列表
    val a = List(1, 2, 3, 4, 5)

    // 使用map()函数将列表中的每个元素乘以2
    val b = a.map(x => x * 2)

    // 打印转换后的列表
    println(b)
  }
}

结果:

1.2foreach()方法

foreach() 是 Scala 中常用的集合操作方法之一,用于对集合中的每个元素执行指定的操作,但不返回任何结果。与 map() 不同的是,foreach() 主要用于执行副作用操作,而不是对集合中的元素进行转换

代码:

object one {
  def main(args: Array[String]): Unit = {
    // 定义一个列表
    val numbers = List(1, 2, 3, 4, 5)

    // 使用 foreach() 方法打印列表中的每个元素
    numbers.foreach(x => println(x))
  }
}

结果:

1.3filter()方法

filter() 方法是 Scala 中常用的集合操作方法之一,用于筛选出集合中满足指定条件的元素,并返回一个新的集合包含满足条件的元素。这个方法接受一个函数作为参数,该函数会被应用到集合中的每个元素上,如果函数返回 true,则该元素会被包含在结果集合中,否则不包含。

代码:

object one {
  def main(args: Array[String]): Unit = {
    // 定义一个列表
    val numbers = List(1, 2, 3, 4, 5)

    // 使用 filter() 方法筛选出列表中大于 2 的元素
    val filteredNumbers = numbers.filter(x => x > 2)

    // 打印筛选后的列表
    println(filteredNumbers)

  }
}

结果:

1.4flatten()方法

flatten() 方法在 Scala 中用于将嵌套的集合结构“扁平化”,即将多层嵌套的集合转换为单层的集合。例如,如果你有一个包含多个列表的列表,你可以使用 flatten() 方法将其转换为一个单独的列表,其中包含了所有元素:

代码 :

object one {
  def main(args: Array[String]): Unit = {
    val nestedList = List(List(1, 2), List(3, 4), List(5, 6))
    val flatList = nestedList.flatten

    println(flatList)
  }
}

结果:

1.5flatmap()方法

flatMap() 方法是一种结合了 map()flatten() 的功能的高阶函数。它通常用于在集合上应用一个函数,并将结果扁平化成一个单层的集合。

具体来说,flatMap() 方法首先对集合中的每个元素应用一个函数,然后将结果集合中的每个子集合合并成一个大的集合。

代码:

object one {
  def main(args: Array[String]): Unit = {
    val list = List(List(1, 2), List(3, 4), List(5, 6))

    // 使用 flatMap() 方法将嵌套的列表转换为单层列表
    val flatMappedList = list.flatMap(x => x)

    println(flatMappedList)
  }
}

结果:

1.6.groupBy()方法

groupBy() 方法用于根据给定函数对集合中的元素进行分组,并返回一个 Map,其中键是分组的结果,而值是相应分组的元素列表。

代码:

object one {
  def main(args: Array[String]): Unit = {
    val list = List("apple", "banana", "grape", "apricot", "blueberry")

    // 使用 groupBy() 方法根据字符串长度进行分组
    val groupedMap = list.groupBy(_.length)

    println(groupedMap)

  }
}

结果:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值