2016-11-30 6 views
0

私はリストのリストを持っています。私はユニークなサブリストだけを持つリストを取得したいと思います。例えば、この入力:ユニークなサブリストを持つリストを取得

List((123,List(List(xxx, abc),List(xxx,abc),List(yyy,abc))), 
    (333,List(List(xxx, abc),List(yyy,abc),List(yyy,abc)))) 

を変換する必要があります。

val unique = input.map(list => (list._1, list._2.distinct)) 

が、それは予想されるトリックを行いません。

List((123,List(List(xxx,abc),List(yyy,abc))), 
    (333,List(List(xxx, abc),List(yyy,abc)))) 

は、私はこれを試してみました。私は間違って何をしていますか?

答えて

2

内側のリストにあるdistinctをマップして実行してください。あなたのmainListとして

mainList.map { case (a, list) => a -> list.distinct } 

はタプルで構成され、あなたはまた、タプルのリストを取得するには、タプル_2を使用することができます。

mainList.map(pair => pair._1 -> pair._2.distinct) 

distinctリスト内の唯一のユニークな要素を維持するの世話をします。

関連する問題