Scala 案例类过滤列表

Jam*_*mes -3 scala case-class

假设您有一个如下所示的案例类

case class Fruit(name: String, color: String, price: Double){
}
Run Code Online (Sandbox Code Playgroud)

你还有案例类别列表

val Fruits = List
(Fruit("Apple", "red", 3.00), Fruit ("Banana", "yellow", 4.99))

How do you filter based on name?

Run Code Online (Sandbox Code Playgroud)

Bri*_*ian 5

使用filter函数选择name案例类的属性Fruit

scala> Fruits.filter(fruit => fruit.name == "Apple")
val res0: List[Fruit] = List(Fruit(Apple,red,3.0))
Run Code Online (Sandbox Code Playgroud)


Joh*_*shy 5

List有一个filter方法。

case class Fruit(name: String, color: String, price: Double)

val Fruits = List(Fruit("Apple", "red", 3.00), Fruit ("Banana", "yellow", 4.99))

Fruits.filter(_.name == "Apple")
Run Code Online (Sandbox Code Playgroud)