char 上的 XOR 不适用于 groovy
为什么这不适用于 groovy?
('a' as char) ^ ('b' as char)
。
groovy.lang.MissingMethodException: No signature of method: java.lang.Character.xor() is applicable for argument types: (java.lang.Character) values: [b]
Possible solutions: div(java.lang.Character), any(), any(groovy.lang.Closure), plus(java.lang.Character), is(java.lang.Object), use([Ljava.lang.Object;)
at Script1.run(Script1.groovy:2)
据我所知,它破坏了与 java 的兼容源
Why this does not work with groovy?
('a' as char) ^ ('b' as char)
It raises
groovy.lang.MissingMethodException: No signature of method: java.lang.Character.xor() is applicable for argument types: (java.lang.Character) values: [b]
Possible solutions: div(java.lang.Character), any(), any(groovy.lang.Closure), plus(java.lang.Character), is(java.lang.Object), use([Ljava.lang.Object;)
at Script1.run(Script1.groovy:2)
As far as i know it breaks compatible source with java.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
适用于 Groovy 1.8.4:
打印
Groovy 有很多地方源代码与 Java 不兼容。 列表可以在这里找到,也有类似 no
do 的内容。 ..while
循环等...编辑
Groovy 项目技术负责人 Jochen Theodorou 回复列表上的邮件:
编辑 #2
这看起来像是一个仅在 JVM 的某些实现中才会出现的问题。因此,我已经向 Groovy Jira 发布了一个问题,所以希望将来能够解决Groovy 的版本会稍微消除差异:-)
Works with Groovy 1.8.4:
prints
Groovy has quite a few places where the source is incompatible from Java. A list can be found here, there are also things like no
do...while
loop, etc...Edit
Jochen Theodorou, the Groovy Project Tech Lead replied to the mail on the list:
Edit #2
This is looking like an issue that only shows itself with certain implementations of the JVM. As such, I have posted an issue to the Groovy Jira, so hopefully future versions of Groovy will smooth out the differences a bit :-)