|
通常,我们对集合类使用map,filter,foreach,但Option也有map,filter,foreach方法,实验如下:
println("----------Option的map,filter,foreach用法----------")
val map = Map("France"->"Paris", "Japan"->"Tokyo", "China"->"Beijing")
val name = map.get("China")
println(name) //Some(Beijing)
val mapname = name.map(f=>f+"map")
println(mapname) //Some(Beijingmap)
val filtername = name.filter(f=>f.substring(0,1) > "D")
println(filtername) //None
val foreachname = name.foreach{
case s:String => s + "foreach"
}
println(foreachname) //()
val name2 = map.get("China2") //None
println(name2)
val mapname2 = name2.map(f=>f+"map")
println(mapname2) //None
val filtername2 = name2.filter(f=>f.substring(0,1) > "D")
println(filtername2)//None
val foreachname2 = name2.foreach {
case s:String => s + "foreach"
}
println(foreachname2) //()
也就是说,我们的实验对Option使用了集合的方法,也使用了模式匹配。
|
|