我有一个jython脚本,我需要在其中调用java方法来处理某些逻辑。
这是我的jython脚本:
from sets import Set
....
names = Set(["Alice","Bob","Charles"])
// call a java method
Test.removeNames(names)
Test类中的removeNames将java.util.Set作为参数。运行脚本后,我得到了一个TypeError:
TypeError: removeNames(): 1st arg can't be coerced to java.util.Set
我尝试在我的jython脚本中使用java.util.Set并且它有效。但是,我只是想知道java方法有没有办法识别jython对象?
感谢!!!
答案 0 :(得分:0)
Jython documentation说自动类型转换(强制)发生在需要的地方。但只有一些Jython类型(参考Jython文档中给出的列表)可以转换为Java类型,反之亦然。
对于其他类型,我想必须使用Java类型对象作为param传递给Java方法。