小编Jin*_*Jin的帖子

Scala隐式转换未应用于Java参数模式

我已经给出了静态方法

static void foo(Object... params)
Run Code Online (Sandbox Code Playgroud)

在Java类Bar中,并计划按如下方式调用它:

Bar.foo('x')
Run Code Online (Sandbox Code Playgroud)

哪个不起作用,因为该方法需要Java字符,并且不知何故,不应用现有的隐式转换.

Bar.foo('x' : Character)
Bar.foo(new Character('x'))
Run Code Online (Sandbox Code Playgroud)

两者都会做,但会损害可读性.将这些构造放在隐式转换中

implicit def baz(c : Char) = c : Character
Run Code Online (Sandbox Code Playgroud)

不起作用,我不明白为什么.所以我的问题:这里有什么问题?有修复吗?

java scala

5
推荐指数
1
解决办法
2113
查看次数

标签 统计

java ×1

scala ×1