scala – 被视为序列的字符串
丹尼尔在这篇文章的回答中:
What are Scala context and view bounds? 提出了一种将String作为Scala集合处理的方法.
我想知道在Scala标准库中我可以在哪里找到这个功能. 与上述帖子相关的另一个简单问题: 我一直看到使用的简写“ev”,特别是当与上下文边界或视图边界示例相关时:
它代表什么? 先感谢您. 解决方法
Scala提供了一个名为WrappedString的java.lang.String包装器: final class WrappedString(val self: String) extends AbstractSeq[Char] with IndexedSeq[Char] with StringLike[WrappedString] 当你运行: f("he","hello") 编译器通过Predef.wrapString隐式地将字符串文字转换为WrappedString的实例: f[String]("he","hello")({ ((s: String) => scala.this.Predef.wrapString(s)) }); 反过来,WrappedString扩展了IndexedSeq [Char],这就是它遵循视图边界请求可转换为可遍历的原因.
它是“证据”的缩写.如果你考虑一下,当你请求某种隐式参数在范围内时,编译器要求你提供操作可能发生的证据. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- AngularJS UI-Router中的ui-sref和$state.go之间
- scala – 如何在case类中定义自定义相等
- twitter-bootstrap – 旧版本Bootstrap的文档
- Bash:如何在屏幕会话中获取命令历史记录?
- docker – 如何从Kubernetes pod中运行curl命令
- macos – ./sysroot.sh:不允许操作
- git – 在docker文件中为ssh-agent添加私钥
- Yum and Rpm Daily Work Summary
- Angular单元测试系列-如何使用Jasmine进行Angula
- scala – Spark Dataset和java.sql.Date