首页 > 大数据 > 数据挖掘 > 大数据Scala系列之样例类_Option_偏函数
在Scala中Option类型样例类用来表示可能存在或也可能不存在的值(Option的子类有Some和None)。Some包装了某个值,None表示没有值。
object OptionDemo {
def
main(args: Array[String]) {
val map = Map(
"a" ->
1,
"b" ->
2)
val v = map.
get(
"b")
match {
case Some(i) => i
case None =>
0
}
println(v)
//更好的方式
val v1 = map.
getOrElse(
"c",
0)
println(v1)
}
}
被包在花括号内没有match的一组case语句是一个偏函数,它是PartialFunction[A, B]的一个实例,A代表参数类型,B代表返回类型,常用作输入模式匹配
用途:处理字符串 类型:
Scala 2.10.0之后,引入一种新的创建字符串的机制,即 String Interpolation. 它允许用户直接在字符串中嵌入变量的引用。
val name=
"James"
println(s
"Hello,$name")
// Hello, James
字符串插值的位置也可以放表达式,如下:
println(s "1 + 1 = ${1 + 1}") // 1 + 1 = 2
插值f 可以对字符串进行格式化,类似printf:
val height =
1.9d
val name =
"James"
println(f
"$name%s is $height%2.2f meters tall")
// James is 1.90 meters tall
raw类似于s,但是raw对字符串内容不作任何的转换:
scala> s
"a
\n
b"
res0: String =
a
b
scala> raw
"a
\n
b"
res1: String = a\nb
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69913892/viewspace-2660320/ ,如需转载,请注明出处,否则将追究法律责任。