博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
scala元组及拉链操作
阅读量:4983 次
发布时间:2019-06-12

本文共 1604 字,大约阅读时间需要 5 分钟。

scala元组及拉链操作:

 

scala里面的元组是可是不同数据类型的

scala> ("scala",1)

res45: (String, Int) = (scala,1)

 

scala> val t = ("scala",100L,3.14,("spark",1))

t: (String, Long, Double, (String, Int)) = (scala,100,3.14,(spark,1))

 

scala> t._1                       //元组内空的提取,以下标为1开始,并用._后跟数字的方式进行提取内容

res46: String = scala

 

scala> t._3

res47: Double = 3.14

 

scala> t._4._1

res48: String = spark

 

scala> val t,(a,b,c,d) = ("scala",100L,3.14,("spark",1))            //可以定义元组时给予变量名,如 t,(a, b, c, d),使用时直接用变量名a,b,c,d即可访问对应内容

t: (String, Long, Double, (String, Int)) = (scala,100,3.14,(spark,1))

a: String = scala

b: Long = 100

c: Double = 3.14

d: (String, Int) = (spark,1)

 

scala> a

res49: String = scala

 

scala> val arr = Array(("tingting",1),("ningning",3),("huihui",5))

arr: Array[(String, Int)] = Array((tingting,1), (ningning,3), (huihui,5))

 

scala> val mp = arr.toMap

mp: scala.collection.immutable.Map[String,Int] = Map(tingting -> 1, ningning -> 3, huihui -> 5)

 

scala拉链操作:

scala> val arr1 = Array("dog","cat","mouse")

arr1: Array[String] = Array(dog, cat, mouse)

 

scala> val arr2 = Array(1,3,5)

arr2: Array[Int] = Array(1, 3, 5)

 

scala> arr1 zip arr2                     //拉链操作符

res50: Array[(String, Int)] = Array((dog,1), (cat,3), (mouse,5))

 

scala> arr2 zip arr1                     //拉链操作符

res51: Array[(Int, String)] = Array((1,dog), (3,cat), (5,mouse))

 

scala> arr1.zip(arr2)                     //拉链操作符

res52: Array[(String, Int)] = Array((dog,1), (cat,3), (mouse,5))

 

scala> val arr3 = Array(1,2,3,4,5)     //生成一个比arr1元素多的数组,用少的去zip多的

arr3: Array[Int] = Array(1, 2, 3, 4, 5)

 

scala> arr1 zip arr3                      //会把长的给截取掉了

res53: Array[(String, Int)] = Array((dog,1), (cat,2), (mouse,3))

 

转载于:https://www.cnblogs.com/cindy-zl24/p/11540254.html

你可能感兴趣的文章
[故障公告]14:39-15:39博客站点部分负载均衡遭遇3次20G以上的流量攻击
查看>>
面向中文的自然语言编程
查看>>
Flutter工程目录
查看>>
hive 函数 current_date()
查看>>
使用python+selenium对12306车票数据读取
查看>>
服务器Config文件不能查看的问题
查看>>
UIImage与CCSprite互相转换
查看>>
jsp详解
查看>>
大型网站架构图
查看>>
新概念英语(1-133)Sensational news!
查看>>
Magnifier笔记
查看>>
git项目,VSCode显示不同颜色块的含义
查看>>
串口配置
查看>>
centos的安装,网络的调试
查看>>
dfs枚举
查看>>
线程等待问题
查看>>
(四)rsync未授权访问
查看>>
喜欢就好
查看>>
MVC3基础嵌套总结
查看>>
QML 基本可视元素之Rectangle 七
查看>>