scala 返回元组的第一个元素

3zwjbxry  于 8个月前  发布在  Scala
关注(0)|答案(3)|浏览(72)

假设我创建了一个函数,它将两个整数相加:

def addInt(a : Int, b: Int) : (Int, Int) = {
 | val x = a + b
 | (x,2)
 | }

为了这个问题,我故意返回(result, 2)
现在我想创建一个只返回x的变量。

val result = addInt(3,4) for example

结果返回(7,2),但我只希望它返回7。我该怎么做?(不明显改变函数的代码)。

bwleehnv

bwleehnv1#

val result = addInt(3,4)._1

如果你想要2:

val the2 = addInt(3,4)._2
wz8daaqr

wz8daaqr2#

Scala元组有用于其元素的访问器方法,称为_1_2_3等。因此,要选择元组的第一个元素,您可以调用_1

someTuple._1

您可以在Scala API documentation中找到Scala的元组类的文档。
或者,您也可以使用模式匹配。

val result      = addInt(3, 4)._1
val (result, _) = addInt(3, 4)
4szc88ey

4szc88ey3#

从Scala 3开始,元组元素可以通过这种方式访问:

val result = addInt(3,4)(0) // first element of tuple

相关问题