1.9学习进度

今日学习2.5h

把剩下的视频看完了

元组: (  ) 声明元组。 元组没有可变的,声明以后只能使用,不能修改。

1- 元组对象的关键字: tuple。  Tuple是一个类,是一个关键字。

2- 元组没有可变的,都是不可变的。

3- 没有可变的,声明以后只能使用,不能修改(tuple)。

4- 概念:一系列数据的集合,可以理解成array,但是比较特殊,可以将不同的类型的数据绑定在一起,同时也可以理解成对象。

5- 元组是一个类,对参数的个数要求是: 1 - 22 个,不能不给参数

6- 使用场景: 方法的返回值是不同数据类型的时候可以绑定在元组中。

 

元组4声明方式: 使用小括号进行声明: (元组数据1,元组数据2...... )

 

特殊元组--->对偶元组: Tuple2 就是对偶元组:

1- 两个参数的元组称为对偶元组;

2- 对偶元组是map集合中的元素,所以比较特殊

3- 对偶元组中有个方法: swap方法,可以将数据进行互换:

 

元组中的操作方法:

1- swap 方法: 将对偶元组中的数据位置互换;

2- zip   方法:拉链方法,可以将两个数组进行拉链操作变成对偶元组

3- zipWithIndex 给数组中的元素添加下标:

 

package com.tiedao.project



object project {
  def main(args: Array[String]):Unit= {
    val data=Array("hello zhangsan","zhangsan hello","haha lisi")
    val strings = data.flatMap(a => a.split(" "))
    val tuples = strings.map(a => (a, 1))
    val stringToTuples = tuples.groupBy(a => a._1)
    val stringToInt = stringToTuples.mapValues(a => a.map(a => a._2).reduce((a, b) => a + b))
  stringToInt.foreach(println)
  }
}
scala处理字符串

原文地址:https://www.cnblogs.com/feng747/p/15600045.html