相关疑难解决方法(0)

类型动态如何工作以及如何使用它?

我听说Dynamic在某种程度上可以在Scala中进行动态类型化.但我无法想象这可能是什么样子或它是如何工作的.

我发现一个人可以继承特质 Dynamic

class DynImpl extends Dynamic
Run Code Online (Sandbox Code Playgroud)

API称,可以使用这样的:

foo.method("blah")~~> foo.applyDynamic("method")("blah")

但是当我尝试它时它不起作用:

scala> (new DynImpl).method("blah")
<console>:17: error: value applyDynamic is not a member of DynImpl
error after rewriting to new DynImpl().<applyDynamic: error>("method")
possible cause: maybe a wrong Dynamic method signature?
              (new DynImpl).method("blah")
               ^
Run Code Online (Sandbox Code Playgroud)

这是完全合乎逻辑的,因为在查看来源之后,事实证明这个特征是完全空的.没有applyDynamic定义方法,我无法想象如何自己实现它.

有人能告诉我我需要做些什么才能让它发挥作用吗?

scala

91
推荐指数
1
解决办法
2万
查看次数

我可以在Scala中省略哪些字符?

在Scala中,为什么我可以在下面的T m 0(而不是T.m(0))中省略点和大括号?

scala> object T { def m(i:Int) = 0 == i }
defined module T

scala> T m 0
res19: Boolean = true
Run Code Online (Sandbox Code Playgroud)

但为什么我不能n(0)在下面省略这些问题呢?

scala> def n(i:Int) = 0 == i
n: (Int)Boolean

scala> n 0
<console>:1: error: ';' expected but integer literal found.
       n 0
         ^
Run Code Online (Sandbox Code Playgroud)

syntax scala

23
推荐指数
1
解决办法
4591
查看次数

Scala - 获取绑定变量列表?

有没有办法在scala中获取绑定变量列表?

variables scala

13
推荐指数
2
解决办法
3291
查看次数

标签 统计

scala ×3

syntax ×1

variables ×1