当前位置:  开发笔记 > 编程语言 > 正文

Predef.StringCanBuildFrom的行为

如何解决《Predef.StringCanBuildFrom的行为》经验,为你挑选了0个好方法。

我偶然发现了Predef.StringCanBuildFrom令人惊讶的实现,这打破了我CanBuildFrom在代码中所做的假设.这是实施:

implicit def stringCanBuildFrom: CanBuildFrom[String, Char, String] = 
    new CanBuildFrom[String, Char, String] {
      def apply(from: String) = apply()
      def apply() = mutable.StringBuilder.newBuilder
}

apply(String)简单地忽略参数似乎完全不自然.对我来说,正确的实施应该是

implicit def stringCanBuildFrom: CanBuildFrom[String, Char, String] = 
    new CanBuildFrom[String, Char, String] {
      def apply(from: String) = apply() ++= from
      def apply() = mutable.StringBuilder.newBuilder
}

但这似乎是微不足道的,以至于我无法相信我是那个因为语言存在而发现它的人.我很想为此开一个问题,但是如果我错过任何没有理由不做我的建议,请告诉我!

推荐阅读
携手相约幸福
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有