Scala 基于两个参数筛选列表
我想根据scala中的参数筛选列表Scala 基于两个参数筛选列表,scala,Scala,我想根据scala中的参数筛选列表 case class Student( name:String, age:Int, subjects:List[Subject] ) case class Subject(name:String,id:Int) val sub1=Subject("maths",101) val sub2=Subject("science",102) val sub3=Subject(&
case class Student(
name:String,
age:Int,
subjects:List[Subject]
)
case class Subject(name:String,id:Int)
val sub1=Subject("maths",101)
val sub2=Subject("science",102)
val sub3=Subject("english",103)
val s1=Student("abc",20,List(sub1,sub2))
val s2=Student("def",30,List(sub3,sub1))
val s3=Student("XYZ",40,List(sub3,sub2))
val sList=List(s1,s2)
def findSubjectId(sList: List[Student], subject:String) {
sList.map(student => student.copy(subjects =
student.subjects.filter(_.name == subject)))
}
sList
.map(student => student.copy(
subjects = student.subjects
.filter(_.name == subject)))
.filter(student => student.age == 20 || student.age == 30)
请分享您尝试过的内容,以及结果。已更新。我无法在2个字段上应用筛选器。您的问题已得到回答?我只在主题上进行了筛选。我想在年龄和主题上进行筛选。您可以在任意字段上链接第二个。filter()。