六-1, Scala模式匹配对象及样例类

1. 提取器

请添加图片描述

2. Unapply方法

快速上手, 可略过下面

  • Scala 提取器是一个实现了Unaply方法的对象;
  • Unapply方法算是apply方法的反向操作: unapply 接受一个对象, 然后从对象中提取值, 提取的值通常是用来构造该对象的值
  • 为了更快的理解, 我们有必要复习一下apply方法: , 简单说就是当我们把对象当做函数一样调用, 传值等, Scala会隐式的调用该对象的类中实现的apply方法;, 如我们有初始化一个Person类,并传入值, Person类如果实现了相应的apply(), 则Person(name, age) 等同于 new Person(name, age)
  1. apply 方法定义 object 中,用于创建对象;
  2. apply方法定义 class 中, 用于提取数据;
  3. unapply 方法 定义在 object 对象中, 用于提取对象数据;

请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述

  • 即便如此,笔者也不推荐这样做。 unapply 方法仅仅负责属性的 “提取”,不应该在该方法内部做过度的设计。我们应当使用条件守卫来将额外的判断逻辑安排在一个 “更显眼的位置”,以此提高代码的可读性。

请添加图片描述

请添加图片描述

3. 样例类

请添加图片描述

posted @   青松城  阅读(39)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
点击右上角即可分享
微信分享提示