Scala 如何使println在main函数中工作?
在这个Scala 如何使println在main函数中工作?,scala,Scala,在这个测试中有两个println。scala case class Person(name: String, isMale: Boolean, children: Person*) object For_expressive { def main(args: Array[String]): Unit = { val lauren = Person("Lauren", false) val rocky = Person("Rocky"
测试中有两个println
。scala
case class Person(name: String, isMale: Boolean, children: Person*)
object For_expressive {
def main(args: Array[String]): Unit = {
val lauren = Person("Lauren", false)
val rocky = Person("Rocky", true)
val vivian = Person("Vivian", false, lauren, rocky)
val persons = List(lauren, rocky, vivian)
//通过高阶函数的方式
val result = persons.filter(persion => !persion.isMale).flatMap(persion =>
persion.children.map(child => (persion.name, child.name)))
println(result)
//通过for循环的方式,其实for循环的背后是转换成filter、map类的操作
val forResult = for(person <- persons; if !person.isMale; child <- person.children)
yield (person.name, child.name) //yield是用在for循环中的,记录每次循环的值
println("-------------------------------------------------------------------")
println(forResult)
}
}
println("-------------------------------------------------------------------")
case类Person(名称:String,isMale:Boolean,子类:Person*)
_的对象{
def main(参数:数组[字符串]):单位={
瓦尔·劳伦=人(“劳伦”,假)
val rocky=人(“rocky”,真)
val vivian=个人(“vivian”,false,lauren,rocky)
val persons=名单(劳伦、洛基、维维安)
//通过高阶函数的方式
val result=persons.filter(person=>!person.isMale).flatMap(person=>
person.children.map(child=>(person.name,child.name)))
println(结果)
//通过对于循环的方式,其实对于循环的背后是转换成过滤、映射类的操作
val forResult=for(person我刚刚编辑了你的代码,得到了以下代码并删除了拼写错误
case class Person(name: String, isMale: Boolean, children: Person*)
object For_expressive {
def main(args: Array[String]): Unit = {
val lauren = Person("Lauren", false)
val rocky = Person("Rocky", true)
val vivian = Person("Vivian", false, lauren, rocky)
val persons = List(lauren, rocky, vivian)
val result = persons.filter(person => !person.isMale).flatMap(person =>
person.children.map(child => (person.name, child.name)))
println(result)
val forResult = for(person <- persons; if !person.isMale; child <-person.children)
yield (person.name, child.name)
println("-------------------------------------------------------------------")
println(forResult)
}
}
case类Person(名称:String,isMale:Boolean,子类:Person*)
_的对象{
def main(参数:数组[字符串]):单位={
瓦尔·劳伦=人(“劳伦”,假)
val rocky=人(“rocky”,真)
val vivian=个人(“vivian”,false,lauren,rocky)
val persons=名单(劳伦、洛基、维维安)
val result=persons.filter(person=>!person.isMale).flatMap(person=>
person.children.map(child=>(person.name,child.name)))
println(结果)
val forResult=for(请将代码放入问题中,而不是链接到问题中。我只是想让我的问题更简洁……请查看建议,并应添加实际输出和预期输出。println(“------”)在主打印中没有任何内容不清楚。