我想从List[String]
中找到唯一的Array[List[String]]
。
例如,
假设我们有以下Array
List[String]
[a, b, c]
[a, b]
[a, b]
[a, c]
预期结果将是
[a, b, c]
[a, b]
[a, c]
答案 0 :(得分:1)
是的。您可以在Array(List(String))
中应用 .distinctdef分别:Array [List [String]]
从该可变索引建立一个新的可变索引序列 没有任何重复元素的序列。
返回
一个新的可变索引序列,其中包含第一次出现的 该可变索引序列的每个元素。
尝试以下代码段
import org.apache.spark.sql.SparkSession
object StackTest {
def main(args: Array[String]): Unit = {
System.setProperty("hadoop.home.dir", "C:\\hadoop")
val spark = SparkSession
.builder()
.config("spark.master", "local[1]")
.appName("StackOverFlow")
.getOrCreate()
spark.sparkContext.setLogLevel("WARN")
val hc = spark.sqlContext
import spark.implicits._
//Define Array[List[String]]
var myArrList = Array(List("a","b","c"),List("a","b"),List("a","b"),List("a","c"))
println("ArrayList: "+ myArrList.deep)
var distinctMyArrList = myArrList.distinct
println("Distinct ArrayList: "+ distinctMyArrList.deep)
}
}
输出
ArrayList: Array(List(a, b, c), List(a, b), List(a, b), List(a, c))
Distinct ArrayList: Array(List(a, b, c), List(a, b), List(a, c))