gpt4 book ai didi

scala - 在 Scala 中返回多个值的函数

转载 作者:行者123 更新时间:2023-12-02 07:59:41 24 4
gpt4 key购买 nike

这个问题在这里已经有了答案:





Is it possible to have tuple assignment to variables in Scala? [duplicate]

(2 个回答)


2年前关闭。




我是 Spark 和 Scala 的新开发人员,我想做一件简单的事情(我认为..):

  • 我有 3 个 int 值
  • 我想定义一个返回 SQL 请求结果的函数(作为包含 3 列的 DF)
  • 我想将这 3 列中的每一列的内容存储在我的 3 个初始变量中。

  • 所以,我的代码如下所示:
    var a
    var b
    var c

    def myfunction() : (Int, Int, Int) = {
    val tmp = spark.sql(""" select col1, col2, col3 from table
    LIMIT 1
    """)

    return (tmp.collect(0)(0), tmp.collect(0)(1), tmp.collect(0)(2))

    }

    所以,如果像这样调用我的函数的想法:
    a, b, c = myfunction()

    我尝试了很多配置,但每次都会遇到很多不同的错误,所以我很困惑。

    最佳答案

    你可以只使用解构绑定(bind)。由于您的方法返回元组,您可以使用模式匹配对其进行解包:

    val (a, b, c) = myfunction()
    a , bc将包含元组的连续元素。

    关于scala - 在 Scala 中返回多个值的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59023427/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com