Scala 学习笔记之集合(3)
建立一个Java类,为了演示Java集合类型向Scala集合的转换:
import java.util.ArrayList;
import java.util.List; public class School { public List<String> ls = null; public School() {
ls = new ArrayList<String>();
ls.add("abc");
ls.add("efg");
} }
import collection.JavaConverters._
import com.citi.java.School object CollectionDemo4 {
def main(args: Array[String]): Unit = {
//List转String,并且用,分隔
println(List(1,2,3,4,5).mkString(", "))
//List转ArrayBuffer
println(List(1,2,3).toBuffer)
//Map转List
println(Map("a" -> 1, "b" -> 2).toList)
//List转Map
println(List("a" -> 1, "b" -> 2).toMap)
println(List(("a",1), ("b", 2)).toMap)
//Set转Map
println(Set("a" -> 1, "b" -> 2).toMap)
println(Set(("a",1), ("b",1)).toMap)
//List转Set
println(List(1,2,3).toSet)
//Set转List
println(Set(1,2,3).toList)
//包括集合类型的String
println(List(1,2,3).toString())
//java集合类型转scala集合类型
val s = new School()
println(s.ls.asScala.toList) }
}
运行结果:
1, 2, 3, 4, 5
ArrayBuffer(1, 2, 3)
List((a,1), (b,2))
Map(a -> 1, b -> 2)
Map(a -> 1, b -> 2)
Map(a -> 1, b -> 2)
Map(a -> 1, b -> 1)
Set(1, 2, 3)
List(1, 2, 3)
List(1, 2, 3)
List(abc, efg)
Scala 学习笔记之集合(3)的更多相关文章
- scala学习笔记:集合
scala> 1 to 10 res9: scala.collection.immutable.Range.Inclusive = Range(1, 2, 3, 4, 5, 6, 7, 8, 9 ...
- Scala 学习笔记之集合(1)
package com.citi.scala object CollectionDemo { def main(args: Array[String]): Unit = { /** * List */ ...
- Scala 学习笔记之集合(7) Option
object CollectionDemo8 { def main(args: Array[String]): Unit = { //Option集合的使用,可以用来安全的判断null或非null,放 ...
- Scala 学习笔记之集合(6)
object CollectionDemo7 { def main(args: Array[String]): Unit = { //数组使用 val arr = Array("red&qu ...
- Scala 学习笔记之集合(5)
import collection.mutable.Buffer object CollectionDemo6 { def main(args: Array[String]): Unit = { // ...
- Scala 学习笔记之集合(4)
集合的模式匹配操作: object CollectionDemo5 { def main(args: Array[String]): Unit = { //集合模式匹配1 val ls = List( ...
- Scala 学习笔记之集合(9) 集合常用操作汇总
object CollectionDemo10 { def main(args: Array[String]): Unit = { var ls = List[Int](1, 2, 3) //向后增加 ...
- Scala 学习笔记之集合(8) Try和Future
import util._ import concurrent.ExecutionContext.Implicits.global import concurrent.Future import co ...
- Scala 学习笔记之集合(2)
class StudentTT extends StudentT{ def sayBye(name: String, age: Int)(address: String){ println(" ...
随机推荐
- 题解 CF499A 【Watching a movie】
题意 看一部电影,从第一分钟开始看,你每次可以按下快进键,快进x分钟,电影有n个精彩片段,问看到所有精彩片段至少需要看多少分钟电影.(数据保证能看到所有精彩片段) 我们可以发现答案其实 就是间隔时间% ...
- Erlang中的RSA签名
RSA签名校验 -spec check_rsa_sign(DataBin, Sign, RSAPublicKeyBin, DigestType) -> boolean when DataBin ...
- ORACLE官网JAVA学习文档
Trails Covering the Basics 1 Getting Started 1.1 The Java Technology Phenomenon 1.1.1 About the Ja ...
- (转载)非常完善的Log4net配置详细说明
一.前言 在项目中,对项目的日志收集是非常重要的,这里我就说说代码的异常日志收集.收集异常日志,有很多第三方成熟的框架,我这里就介绍一下我常用的Log4net. Log4Net介绍 Log4net 是 ...
- 开发必配的Finder设置
1.显示标签页.显示路径栏.显示状态栏的设置位置,在访达->显示-> 显示状态栏 个人三个都设置了,但是觉得显示状态栏用的并不多,反而多一行,下面是显示状态栏的效果,主要可以一眼看出有多少 ...
- Flutter开发环境配置(MAC版)
一.配置镜像 打开命令终端,输入命令open ~/.bash_profile,打开bash_profile文本,添加镜像路径并保存 export PUB_HOSTED_URL=https://pub. ...
- 一些简单的Linux命令(centos修改网络ip,修改主机名)
环境:linux centos 7 vi /etc/sysconfig/network-scripts/ifcfg-enp3s0f0 可以修改网关地址,网络IP地址,子网地址等等 [root@loca ...
- Java多线程(十四):Timer
Timer schedule(TimerTask task, Date time) 该方法在指定日期执行任务,如果是过去的时间,这个任务会立即被执行. 执行时间早于当前时间 示例代码,当前时间是201 ...
- 自定义View入门-绘制基础(1)
### 前言 说道自定义View,我们一定会想到,自定义View的绘制流程 - 测量阶段(measure) - 布局阶段(layout) - 绘制阶段(draw) 我们看到的一些炫酷的view效果,都 ...
- 浅谈Task的用法
Task是用来实现多线程的类,在以前当版本中已经有了Thread及ThreadPool,为什么还要提出Task类呢,这是因为直接操作Thread及ThreadPool,向线程中传递参数,获取线程的返回 ...