case class Student(name:String,isMale:Boolean,children:Student*) object test2{ def main(args: Array[String]): Unit = { val lauren = Student("lauren",false) val rocky = Student("Rocky",true) val vivican = Student("vivican",false,lauren,rocky) val students = List(lauren,rocky,vivican) val forResult = for{ student<-students; name=student.name; if !student.isMale;child<-student.children} yield (student.name,child.name) println(forResult) } }