java list 转 scala_Java与Scala集合互转
使用 scala.collection.JavaConverters 与Java集合交互。它有一系列的隐式转换,添加了asJava和asScala的转换方法。
import scala.collection.JavaConverters._
val list: java.util.List[Int] = List(1,2,3,4).asJava
val buffer: scala.collection.mutable.Buffer[Int] = list.asScala
以下集合可以进行任意,转换。但在某些情况下引入的隐式转换不正确或未引入,仍然无法进行正确转换,如API的例子
scala.collection.Iterable <=> java.lang.Iterable
scala.collection.Iterable <=> java.util.Collection
scala.collection.Iterator <=> java.util.{ Iterator, Enumeration }
scala.collection.mutable.Buffer <=> java.util.List
scala.collection.mutable.Set <=> java.util.Set
scala.collection.mutable.Map <=> java.util.{ Map, Dictionary }
scala.collection.concurrent.Map <=> java.util.concurrent.ConcurrentMap
总结下来就是:collection:可以指定元素排序规则:sort方法或继承comparable
scala.collection.Iterable<=>java.lang.{iterable,collection}
scala.collection.Iterator<=>java.util.{Iterator,Enumeration}
scala的Buffer对应就是java.util.List,不可直接使用,使用ListBuffer
scala.collection.mutable.Buffer<=>java.util.List
scala.collection.mutable.Set<=>java.util.Set
scala.collection.mutable.Map<=>java.util.{Map,Dictionary}
并发安全集合
scala.collection.concurrent.Map<=>java.util.concurrent.ConcurrentMap
以下为scala.collection.mutable.ListBuffer<=>java.util.List
除要求引入相应的转换类JavaConversions._,还有引入ListBuffer=>java.util.List 具体转换方法
List 转 Seq:
List tmpList = new ArrayList<>();
tmpList.add("abc");
Seq tmpSeq = JavaConverters.asScalaIteratorConverter(tmpList.iterator()).asScala().toSeq();
Seq 转 List:
List tmpList = scala.collection.JavaConversions.seqAsJavaList(tmpSeq);
java list 转 scala_Java与Scala集合互转相关推荐
- Scala与Java集合互转摘要
欢迎支持笔者新作:<深入理解Kafka:核心设计与实践原理>和<RabbitMQ实战指南>,同时欢迎关注笔者的微信公众号:朱小厮的博客. 欢迎跳转到本文的原文链接:https: ...
- scala to java_Scala 2.13 以后Java集合与Scala集合互相转换
原来需要Java集合和Scala集合类型互换时引入import scala.collection.JavaConverters._1 即可,但在Scala 2.13版本中JavaConverter已经 ...
- Scala函数式编程(三) scala集合和函数
前情提要: scala函数式编程(二) scala基础语法介绍 scala函数式编程(二) scala基础语法介绍 前面已经稍微介绍了scala的常用语法以及面向对象的一些简要知识,这次是补充上一章的 ...
- Scala集合实现WordCount代码实现
实现思路分析 代码实现 package com.zxl.chapter10/*** 使用scala集合实现WordCount*/ object Scala09_WordCount {def main( ...
- scala集合转java_Java,Scala,Guava和Trove集合-它们可以容纳多少数据?
scala集合转java 关于我们的数据结构的一个有趣的事情是,即使我们非常熟悉它们,但对于我们来说,仍然很难说出像HashMap这样基本的东西在1GB的内存中可以容纳多少个项目. 我们可能会在学校, ...
- scala集合中添加元素_如何在Scala中将元素添加到列表中?
scala集合中添加元素 In Scala, lists are immutable data structures in which adding new elements is not allow ...
- Scala 集合 —— Array、Map、Seq、Set
until vs to until 不包括右端点: to 包括右端点: 格式化输出 val i = 100 val s = "hello world" println(f" ...
- java与javascript之间json格式数据互转
javascript中对象与字符串的互转 对象转为字符串:通过JSON.encode方法,这个是json.js里面的方法,引入到当前文件就可以了. 字符串转换为对象:①使用JSON.decode方法, ...
- 1.15 Java 9新增的不可变集合
Java 9新增的不可变集合 Java 9 版本以前,假如要创建一个包含 6 个元素的 Set 集合,程序需要先创建 Set 集合,然后调用 6 次 add() 方法向 Set 集合中添加元素.Jav ...
最新文章
- NLP --- 条件随机场CRF详解 重点 特征函数 转移矩阵
- java mysql in_MySQL中Exists和In的使用
- SQL2005客户端连接到SQL2000服务器存在的问题
- (NO.00001)iOS游戏SpeedBoy Lite成形记(二十二)
- python trim函数_python strip()函数 介绍
- Project vector on to vector
- linux webservice端口号,解决在Linux环境下访问webservice发送中文乱码问题的方案
- 小米5如何支持ATT网络运营商
- t–sql pl–sql_SQL Server处理器性能指标–第1部分–最重要的CPU指标
- 传高盛与德劭前合伙人组5亿美元私募基金
- 架构之旅~底层提供一个统一的GetModel()的重要性
- 【ML小结2】信息论
- 六子棋人机程序Java版(附源码+设计思路)
- 数字图像处理100问—27 双三次插值( Bicubic Interpolation )
- hdu 2079 选课时间(题目已修改,注意读题)
- 个人网站 域名 购买 解析 备案
- 华东理工大学计算机网络作业,华东理工大学计算机网络实验操作手册.pdf
- C/C++中文帮助手册
- 一维数组、二维数组的大小、长度与偏移
- MIMO信道的信道容量
热门文章
- 如何使用BAdI ORDER_SAVE创建客户自定义的error message
- Upload Picture to application server
- SAP CRM WebClient UI WebUI Runtime repository design
- 如何在Github里创建organization和代码仓库
- 如何在SAP ABAP development studio里进行代码coverage分析
- 在Kubernetes上运行SAP UI5应用
- 伦斯勒理工学院计算机科学本科,【择校解读】伦斯勒理工学院(RPI)院校指南...
- php魔术方法例子,PHP中魔术方法的使用举例
- python怎么用for循环找出最大值_在for循环Python中查找前10个最大值
- 二叉树的后序遍历Python解法