Scala集合架构与提取器详解
1. Scala集合架构
在Scala中,若要将新的集合类完全集成到框架中,需要注意以下几点:
1. 决定集合的可变性 :确定集合是可变的还是不可变的。
2. 选择合适的基础特质 :为集合挑选正确的基础特质。
3. 继承合适的实现特质 :继承正确的实现特质来实现大多数集合操作。
4. 提供隐式CanBuildFrom :如果希望 map 等操作返回自己集合类型的实例,需要在类的伴生对象中提供隐式的 CanBuildFrom 。
例如,给定一个前缀映射 res0 ,对其键值绑定应用一个函数,生成字符串对。如果没有 PrefixMap 中的隐式 CanBuildFrom , map 操作的结果将只是一个通用的可变映射,而不是前缀映射。
2. 提取器概述
在Scala中,提取器是一种强大的工具,它可以帮助我们定义与对象内部表示无关的模式。传统上,构造器模式与 case 类相关联,但有时我们希望在不创建关联 case 类的情况下编写模式,提取器就提供了这样的能力。
3. 提取电子邮件地址示例
假设需要分析表示电子邮件地址的字符串,传统方法是使用三个辅助函数:
超级会员免费看
订阅专栏 解锁全文
241

被折叠的 条评论
为什么被折叠?



