美文网首页Scala学习
Scala Tuple元组操作整理

Scala Tuple元组操作整理

作者: xiaogp | 来源:发表于2020-10-25 11:05 被阅读0次

摘要: ScalaTupleJava
Scala的元组Tuple是不可变的,但与列表不同的是元组可以包含不同类型的元素。

Scala Tuple基本操作

创建元组

使用括号()或者Tuple进行元组创建,Tuple后面的数字代表元组长度,最长22个元素(Tuple22),对于二元元组可以使用->创建

 def createTuple(): Unit = {
    val tuple1 = (1, "a", true)
    val tuple2 = new Tuple3[Int, String, Boolean](1, "a", true)
    val tuple3 = Tuple3(1, "a", true)
    val tuple4 = 1 -> "a"
    println(tuple1 == tuple2) // true
    println(tuple1 == tuple3)  // true
  }
访问元组元素

使用下标访问元素,也可以直接赋值给一个()元组,不需要的值使用_代替

def getTupleValue(): Unit = {
    val tuple1 = (1, "a", true)
    val a = tuple1._1
    val b = tuple1._2
    val c = tuple1._3

    val (d, _, _) = Tuple3(1, "a", true)
    println(d)
  }
元组元素交换

对于二元元组(Tuple2)可以使用swap进行位置交换

def swapTuple(): Unit = {
    val tuple1 = Tuple2(1, "a")
    val tuple2 = tuple1.swap
    println(tuple2)  // (a,1)
    println(tuple2._1)  // a
  }
元组元素遍历循环

使用productIterator获得迭代对象

def TupleLoop(): Unit = {
    val tuple1 = (1, "a", true)
    tuple1.productIterator.foreach(println)
  }

Scala Tuple在Java中调用

Scala函数返回Tuple,Java对象指定Tuple类型,泛型String通用,其他类型Object再类型强转,使用下标方法获得值

public static void main(String[] args) {
        scala.Tuple2<String, String> res = TupleTest.returnTuple();
        String a = res._1();  // a
        String b = res._2();  // b

        scala.Tuple2<Object, Object> res2 = TupleTest.returnTuple2();
        int aa = (int) res2._1();  // 1
        boolean bb = (boolean) res2._2();  // false
    }

相关文章

  • Scala Tuple元组操作整理

    摘要: Scala,Tuple,JavaScala的元组Tuple是不可变的,但与列表不同的是元组可以包含不同类型...

  • scala tuple

    object ScalaTuple extends App { // scala 的映射与元组(tuple)// ...

  • scala(十七) 元组(tuple)

    元组的创建方式: 通用方式: (初始元素,初始元素,...) 二元元组: K -> V scala中二元元组表示K...

  • Scala之旅(TOUR OF SCALA)——元组(Tuple

    在scala中,元组是一个包含固定数量元素的值,每个元素都有一个不同的类型。元组是不可变的。

  • 元组和字典

    一,元组(tuple) 元组是不可变的列表,列表中除了课表操作外,其他的操作都适用于元组 1.元组的声明(元组名=...

  • Python 数组与元组

    形如:( , , ,)的东西。关键符号是' , '+'()'。元组不可修改。支持分片等操作。tuple(元组) 数...

  • day006 笔记

    方法 函数 元组(tuple) tuple一旦初始化就不能修改。改、增、删相关操作不能作用于元祖。 创建空元组。 ...

  • Scala 简明速学05 集合-Tuple

    Scala 简明速学05 集合-Tuple Tuple Scala中Tuple为单个键值对。

  • 7元组、序列[python基础]

    元组(Tuple)的读写操作 元组就是不可变的列表*元组使用小括号,列表使用中括号 元组的读取方式和列表相同 创建...

  • python--元组

    Tuple(元组)与列表类似,不同之处在于元组的 元素不能修改 创建一个新元组 元组常用操作 在 ipython3...

网友评论

    本文标题:Scala Tuple元组操作整理

    本文链接:https://www.haomeiwen.com/subject/qhbgmktx.html