📜  Scala List distinct() 方法与示例(1)

📅  最后修改于: 2023-12-03 15:19:57.126000             🧑  作者: Mango

Scala List distinct() 方法与示例

distinct() 是 Scala List 类中的一个方法,它可以返回一个不包含重复元素的新列表。本篇文章将对这个方法进行介绍,并提供几个例子。

语法

distinct() 方法没有参数,其语法如下:

def distinct: List[A]

该方法将返回一个新列表,其元素是原列表中去重后的所有元素。

使用示例

下面是使用 distinct() 方法的几个例子。

val list1 = List(1, 2, 2, 3, 3, 3, 4, 4, 4, 4)
val list2 = List("apple", "banana", "orange", "banana", "apple")

val distinctList1 = list1.distinct
val distinctList2 = list2.distinct

println(distinctList1) // List(1, 2, 3, 4)
println(distinctList2) // List(apple, banana, orange)

在上面的示例中,我们分别创建了两个列表,一个是整数列表,另一个是字符串列表。通过 distinct() 方法,得到了它们的去重列表,并将其打印输出。

case class Person(name: String, age: Int)

val list3 = List(Person("John", 25), Person("David", 30), Person("John", 25))

val distinctList3 = list3.distinct

println(distinctList3) // List(Person(John,25), Person(David,30))

在这个示例中,我们创建了一个自定义类型的列表,通过 distinct() 方法去重,并将其打印输出。由于 Person 类是自定义类型,需要实现 equals() 方法来保证去重的正确性。

注意事项
  • distinct() 方法只是去除同一列表中的重复元素,如果需要去除不同列表之间的重复元素,则需要使用 union() 方法。
总结

distinct() 方法是 Scala List 类的一个成员方法,用于去除列表中的重复元素。本篇文章介绍了该方法的语法和几个使用示例,并提醒开发者注意事项。