scala – 我应该默认使用GenSeq吗?
发布时间:2020-12-16 09:49:06 所属栏目:安全 来源:网络整理
导读:将GenSeq用作“默认”集合类型是最佳做法吗?它似乎是最通用的集合界面.但是我没有看到它在代码示例中广泛使用(更具体的Seq用于代替). 解决方法 不应.应该出现在API中的最通用的集合类型是: Seq – 顺序收集 集 – 数学集(无重复值) Map – 关联/关联集(概
将GenSeq用作“默认”集合类型是最佳做法吗?它似乎是最通用的集合界面.但是我没有看到它在代码示例中广泛使用(更具体的Seq用于代替).
解决方法
不应.应该出现在API中的最通用的集合类型是:
> Seq – 顺序收集 对上述区分中性的唯一抽象是可遍历和可迭代. (例如,Map [K,V]是可迭代的[(K,V)]和Traversable [(K,V)]. 如果对于实际参数而言重要的是它的元素可能以某种(未指定的)顺序进行检查,那么Traversable将捕获该特征. 包含“Like”或“Once”或“Gen”的类或特征名称是内部魔法的一部分,使得Scala集合展现出“最少惊喜的原则”(其中主要是在其上调用HOF的属性,例如map或filter产生的结果与匹配的具体类型一样,就是调用HOF的集合的类型. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |