【问题标题】:convertion/Flattening of Some(Array(Array(Array(String)))) to Array(String)Some(Array(Array(Array(String)))) 到 Array(String) 的转换/展平
【发布时间】:2019-11-23 22:17:06
【问题描述】:

我有一个Option[Array[Array[Array[String]]]],我想转换为Array[String] 或至少Some(Array[String])

我已经尝试过.flatten 方法。

我可以使用.map(_.map(_.map(_.foreach(print)))) 进行打印,但想将此打印的内容存储为列表。

期望:Array[String]Some(Array(String))

【问题讨论】:

  • 为了提供minimal reproducible example,最好还添加一个您尝试转换的数据集的示例。
  • 提问时请格式化您的代码。

标签: scala user-defined-functions scala-collections


【解决方案1】:

要将Option[Array[Array[Array[String]]]] 转换为Option[Array[String]],请执行以下操作:

.map(_.flatten.flatten)

要打印结果中的数据,请执行此操作

.foreach(_.foreach(println))

【讨论】:

    【解决方案2】:

    如果您确切知道可以执行的结构:

    对于Option[Array[String]]

    myArray.map(_.flatten.flatten)
    

    对于Array[String]

    myArray.toArray.flatten.flatten.flatten
    

    【讨论】:

    • 我还为Array[String]添加了一个版本
    猜你喜欢
    • 1970-01-01
    • 2019-03-30
    • 1970-01-01
    • 1970-01-01
    • 2019-03-22
    • 2020-12-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多