scala 元组tuple的几个知识点-提供分
来源:互联网 发布:nasa直播软件 编辑:程序博客网 时间:2024/04/30 08:08
- 博客分类:
通过下标_n取数据不多说了,下面是几个比较有意思的知识点
知识点
1、Tuple 和Function 和Producct一样最多只支持22个元素
比如 (0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21) 这样是没问题的
但是(0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,2122) 会编译不通过
伦理片 http://www.dotdy.com/
2、Tuple 不能通过一个泛型参数来指定所有元素的类型,多个元素对应多个参数,试图通过一个类型参数来 限定元组中所有的元素的类型是错误的
允许这样使用 : var t=Tuple3[Int,Int,Int](1,2,3) 或者var t2= Tuple3(1,2,3) 或者var t3=(1,2,3)
不可以这样使用:Tuple3[Int](1,2,3) //试图通过一个类型参数来限定元组中所有的元素的类型是错误的
3、Tuple 不像List一样有map、flatMap 等方法直接操作元素,只能通过混入的ProductN(n代表1-22的数字) 的productIterator函数生成一个Iterator来操作数据,并且productIterator的返回类型是Iterator[Any] ,类型参数是Any ,所以操作数据的时候还要进行类型转换。比如_.asInstanceOf[Int] 或者模式匹配
例子
例子:val m = Map(2->(3,2) , 1->(2,1,3)) 怎么实现相同key的元素相加,得到 Map(2->5 , 1->6) 的结果? 其中value是个元组,元组中可以有任意多个(1-22个)Int类型的数字
解决方案:
object mapplus2 extends App {
val m = Map(2->(3,2) , 1->(2,1,3))
val m2=m.mapValues(_.productIterator.map(_.asInstanceOf[Int]).sum)
println(m2)
影音先锋电影 http://www.iskdy.com/
0 0
- scala 元组tuple的几个知识点-提供分
- scala 元组tuple的几个知识点
- scala中的tuple元组
- Scala中常见的容器 元组 Tuple
- Scala中Tuple(元组)的使用
- scala中的元组(Tuple)
- Scala学习笔记之元组`Tuple`
- scala编程系列(4)-scala元组tuple
- scala学习-scala中的元组Tuple概念
- Tuple 元组 的解释
- 云星数据---Scala实战系列(精品版)】:Scala入门教程044-Scala实战源码-Scala 元组Tuple操作
- C#的元组Tuple类型
- python元组Tuple的遍历
- 元组 tuple
- 元组(Tuple)
- Tuple 元组
- 元组Tuple浅析
- C# 组元Tuple
- PAT 1019 数字黑洞
- android典型代码系列(二)------sqlite数据库操作高级
- String类的实现
- 1.iOS开发系列--C语言之基础知识
- MyBatis学习笔记(三)数据的增删改查 CRUD操作
- scala 元组tuple的几个知识点-提供分
- 【设计模式】简单工厂模式——以一个简单的计算器为例
- Android Service生命周期 Service里面的onStartCommand()方法详解
- 跟着9张思维导图学习Javascript
- Validform 验证
- 解决Value '0000-00-00 ' can not be represented as java.sql.Timest
- Android中常用的位图操作(View与Bitmap转化、圆角、灰化、提取Alpha、旋转、倒影、剪切……)
- android典型代码系列(三)------数据库URI收集
- Fatal error encountered during command execution