Scala 除去List中的重复元素

编程入门 行业动态 更新时间:2024-10-26 19:34:20

Scala 除去List中的重复<a href=https://www.elefans.com/category/jswz/34/1771401.html style=元素"/>

Scala 除去List中的重复元素

1, 最简单直接办法是用distinctscala> val l = List(1,2,3,3,4,4,5,5,6,6,6,8,9)
l: List[Int] = List(1, 2, 3, 3, 4, 4, 5, 5, 6, 6, 6, 8, 9)scala> l.distinct
res32: List[Int] = List(1, 2, 3, 4, 5, 6, 8, 9)2, toSetscala> l.toSet.toList
res33: List[Int] = List(5, 1, 6, 9, 2, 3, 8, 4)3, 用foldLeft/*** List去重(泛型实现)* @param list* @tparam T* @return*/def dups[T](list: List[T]) = list.foldLeft(List.empty[T]){(seen, cur) =>if(seen.contains(cur)) (seen) else (seen :+ cur)}//非泛型实现def duplicate[Int](list: List[Int]) = list.foldLeft(List.empty[Int]){(result, cur) => if(result.contains(cur)) result else result :+ cur}def main(args: Array[String]) {//println(countWords("Jack,gates,jack,Lucy:jack,Gates!"))val dup = List(1,1,1,2,3,4,5,5,6,100,101,101,102)val list = List("aa","dd","aa","vv","dd")println(duplicate(dup))println(dups(dup))println(dups(list))}输出:
List(1, 2, 3, 4, 5, 6, 100, 101, 102)
List(1, 2, 3, 4, 5, 6, 100, 101, 102)
List(aa, dd, vv)

原文链接:

更多推荐

Scala 除去List中的重复元素

本文发布于:2024-02-25 18:35:36,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1699911.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:元素   Scala   List

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!