Scala的JavaMap与ScalaMap隐式转换怎么实现
发表于:2024-11-30 作者:千家信息网编辑
千家信息网最后更新 2024年11月30日,本篇内容主要讲解"Scala的JavaMap与ScalaMap隐式转换怎么实现",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"Scala的JavaMap与S
千家信息网最后更新 2024年11月30日Scala的JavaMap与ScalaMap隐式转换怎么实现
本篇内容主要讲解"Scala的JavaMap与ScalaMap隐式转换怎么实现",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"Scala的JavaMap与ScalaMap隐式转换怎么实现"吧!
Tuple拉链操作
实际就是将两个Array合并成一个Tuple,通过Array的zip()方法实现,这里需要注意,两个数组的长度要一致,不然会丢数据:
代码实例:
package com.hadoop.ljs.spark.study
/**
* @author: Created By lujisen
* @company ChinaUnicom Software JiNan
* @date: 2020-02-08 19:59
* @version: v1.0
* @description: com.hadoop.ljs.spark.study
*/
/*Array数组的zip()方法可将两个数组合并成一个tuple*/
object TupleZip {
def main(args: Array[String]): Unit = {
val nameArray=Array("ljs1","ljs2","ljs3")
val nameArray2=Array("ljs1","ljs2","ljs3","ljs4")
val ageArray=Array(17,18,19)
val nameAgeArray=nameArray.zip(ageArray)
println("两个数组元素相同")
nameAgeArray.foreach{
x=>println("姓名:"+x._1+" 年龄"+x._2)
}
println("两个数组元素不同")
val nameAgeArray2=nameArray2.zip(ageArray)
for((name,age)<-nameAgeArray2){
println("姓名:"+name+" 年龄"+age)
}
/*如果Array元素是一个Tuple,可直接调用Map(),转换成Map*/
val nameAgeMap=nameAgeArray.toMap
println("转化成Map")
println(nameAgeMap)
}
}
从代码可看出,当两个Array长度不一致时,只保留了对应的数据,后面多的数据直接丢弃了。
由于都运行在JVM上,Java与Scala之间基本能做到无缝的集成,区别主要在于各自的API各有不同。由于Scala为集合提供了更多便捷的函数,因此,Java与Scala在集合之间的互操作,或许是在这种多语言平台下使用最为频繁的。
Scala中操作Java集合
两种情况需要在Scala中操作Java集合。一种是Scala调用了其他的Java库,针对Java集合需要转换为Scala集合,如此才能享受Scala集合提供的福利;另一种是编写了Scala程序,但需要提供给Java库,为了更好地无缝集成,要让Java库体会不到Scala的存在。
JavaMap和ScalaMap隐式转换,
代码实例:
package com.hadoop.ljs.spark.study
import java.util
/**
* @author: Created By lujisen
* @company ChinaUnicom Software JiNan
* @date: 2020-02-08 20:23
* @version: v1.0
* @description: com.hadoop.ljs.spark.study JavaMap和Scala隐式转换
*/
import scala.collection.JavaConversions.mapAsScalaMap
object JavaMapImplicitScalaMap {
def main(args: Array[String]): Unit = {
val javaMap=new util.HashMap[String,Int]()
javaMap.put("ljs1",17)
javaMap.put("ljs2",18)
javaMap.put("ljs3",19)
val scalaMap:scala.collection.mutable.Map[String,Int]=javaMap
println(scalaMap)
import scala.collection.JavaConversions.mapAsJavaMap
val scalaAttrMap = Map("ljs4" -> 20, "ljs5"->22)
val javaMap2 = new util.HashMap[String,Int](scalaAttrMap)
println(javaMap2)
}
}
到此,相信大家对"Scala的JavaMap与ScalaMap隐式转换怎么实现"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
两个
数组
代码
元素
数据
方法
不同
一致
之间
内容
姓名
实例
实际
年龄
无缝
更多
长度
并成
学习
便捷
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
银行有负责网络安全的吗
mysql 数据库工具
坦克世界盒子连接服务器失败
数据库或者查询 039
中国青少年网络安全内容
男孩学什么软件开发好
网络安全的三大安全隐患是
diy打印服务器
港服ps4实况足球连不上服务器
浪潮服务器江苏总代
绍兴网络技术有限公司
怎么描述数据库表能避免查重
怎样看电脑装的是什么数据库
进社区网络安全
服务器的服务器管理器在哪
光网络技术的未来发展
实例说明如何防范网络安全风险
网络技术应用教学案例
热水器软件开发公司有哪些
基站软件开发
网页上输入服务器的ip
远程数据库如何导出
盛世加倍网络技术有限公司
服务器的管理芯片
网络安全报写字
浙江敏捷软件开发工程
计算机软件开发企业会计分录
七日杀连接不了朋友服务器
怎么描述数据库表能避免查重
怎样看电脑装的是什么数据库