Scala 提取器
Scala|提取器
提取器是一种特殊类型的对象具有一些特殊的方法。这些方法是:apply()和unapply()。
提取器对象的apply()方法用于提供对象的值,它获取参数值,对其进行格式化并将其添加到对象中。
提取器对象的unapply()方法用于从对象中删除值,它匹配该值并将其从对象列表中删除。
提取器的工作
让我们以apply()和unapply()方法为例。apply()方法接受参数并将它们添加到类中。unapply()的作用正好相反,它接受参数,匹配参数,然后删除,即解构。
程序:
object Student
{
def main(args: Array[String])
{
def apply(name: String, result: String) =
{
name +" 是 "+ result
}
def unapply(x: String): Option[(String, String)] =
{
val y = x.split("is")
if (y.length == 2 && y(1)=="Pass")
{
Some(y(0), y(1))
}
else
None
}
println ("Apply方法返回: " +
apply("Ram", "Pass"))
println ("Unapply方法返回: " +
unapply("Ram是Pass"))
}
}输出结果
Apply方法返回: Ram 是 Pass Unapply方法返回: Some((Ram,Pass))
说明:
这里的unapply()方法,检查学生是否被传递,并根据结果删除它。
热门推荐
10 新人红包祝福语简短精辟
11 幼师给毕业祝福语简短
12 生日高考祝福语妹妹简短
13 下飞机祝福语简短英文
14 元宵发客户祝福语简短
15 爸妈金婚文案祝福语简短
16 新郎朋友红包祝福语简短
17 虎年五一祝福语大全简短
18 出阁宴祝福语姐姐简短