Scala之旅(6)——基础概要(模式匹配和样本类)

模式匹配时Scala很强大的一个功能。

模式匹配

模式匹配种类繁多,通常有七种:

  • 通配符匹配
  • 常量匹配
  • 守卫匹配(变量匹配)
  • 构造函数匹配
  • 集合类型匹配
  • 元组类型匹配
  • 类型匹配。

注:不仅仅是匹配,我们在匹配时还可以做if判断。

常量匹配

守卫匹配(变量匹配)

其中i是守卫,守卫名称可以任意起名。这里在匹配时我们做了if判断。

通配符匹配


通配符 _ 保证处理所有的场景,负责,当不匹配的时候系统将抛出运行时异常。

通配符 _ 的缺点是在匹配到时,我们无法获取到匹配值。此时,我们可以使用守卫匹配(变量匹配)。

构造函数匹配

类型匹配


集合匹配

元组匹配

样本类

样本类可以方便得存储和匹配类的内容,不需要用new关键字创建便可以使用。


凡是样本类中基于构造函数的参数都自动地实现了equals方法和toString方法,用来保证模式匹配时对象的相等判断。

样本类也可以像普通类一样拥有方法。

上述构造函数匹配便是利用样本类进行匹配。

猜你喜欢

转载自blog.csdn.net/Stefan_xiepj/article/details/80269477