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 生日祝福语 男性简短独特