Skip to content

集合之间互转

1. 数组转其他类型

scala
def main(args: Array[String]): Unit = {
    val array1: Array[Int] = Array(1, 3, 5, 7, 9)
    // 转List
    val list: List[Int] = array1.toList
    // 转Set
    val set: Set[Int] = array1.toSet
    // 数组转Map, 要求单个元素是tuple类型
    val array2 = Array((1->"jack"), (2->"name"), ("chengdu"->"panda"))
    val map: Map[Any, String] = array2.toMap
    println(array1)
    println(list)
    println(set)
    println(array2)
    println(map)
}

运行结果:
Alt text

2. List转其他类型

scala
def main(args: Array[String]): Unit = {
    val list: List[Int] = List(1, 2, 3, 2)
    val array: Array[Int] = list.toArray
    val set: Set[Int] = list.toSet
    println(list)
    println(array)
    println(set)
    // list或者seq转Map, 要求单个元素是tuple类型
    val list1: List[(Int, String)] = List((1, "heh"), (9, "spark"), (7, "jack"))
    val map: Map[Int, String] = list1.toMap
    println(map)
}

运行结果:
Alt text

3. Set转其他类型

scala
def main(args: Array[String]): Unit = {
    val set1: Set[Int] = Set(1, 2, 3, 2)
    // 转数组
    val array: Array[Int] = set1.toArray
    // 转List
    val list: List[Int] = set1.toList
    // Set转Map, 要求单个元素是tuple类型
    val set2 = Set(("name", "jack"), ("sex", "man"), ("age", 33), ("age", 33))
    val map = set2.toMap
    println(set1)
    println(array)
    println(list)
    println(set2)
    println(map)
}

运行结果:
Alt text

4. Map转其他类型

scala
def main(args: Array[String]): Unit = {
    val map1 = Map(("name", "jack"), ("sex", "man"), ("age", 33), ("age", 33))
    // 转数组
    val array: Array[(String, Any)] = map1.toArray
    // 转List
    val list: List[(String, Any)] = map1.toList
    // 转Set
    val set: Set[(String, Any)] = map1.toSet
    println(map1)
    println(array)
    println(list)
    println(set)
}

运行结果:
Alt text