scala:隐式转换不起作用
发布时间:2020-12-16 19:01:01 所属栏目:安全 来源:网络整理
导读:我从包中导入了隐式函数的问题. 我有一个使用正则表达式在文本中查找内容的类.我想用它作为: val pattern = "some pattern here".r pattern findSomethingIn some_text 为此,我定义了一个隐式finction,将模式转换为包含findSomethingIn函数的包装器Wrapper
我从包中导入了隐式函数的问题.
我有一个使用正则表达式在文本中查找内容的类.我想用它作为: val pattern = "some pattern here".r pattern findSomethingIn some_text 为此,我定义了一个隐式finction,将模式转换为包含findSomethingIn函数的包装器Wrapper package mypackage { class Wrapper ( val pattern: Regex ) { def findSomethingIn( text: String ): Something = ... } object Wrapper { implicit def regex2Something( pat: Regex ): Wrapper = new Wrapper( pat ) } } 如果我用它 import mypackage._ Wrapper.regex2Something( pattern ) findSomethingIn some_text 有用.而如果我使用 pattern findSomethingIn some_text // implicit should work here?? 我明白了 value findPriceIn is not a member of scala.util.amtching.Regex 所以隐式转换在这里不起作用……问题是什么? 解决方法
你会需要
import mypackage.Wrapper._ 导入适当的方法. 有关详细信息,请参阅this blog entry,并特别注意Conversions对象的定义/导入. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐
热点阅读