我有以下java代码:
nameFinderModel = NameFinderME.train("en", "organization",
sampleStream, Collections.<String, Object>emptyMap());
我的转换如下:
nameFinderModel = NameFinderME.train("en", "organization", sample_stream, {})
这是一个适当的转换还是我错过了什么?是否有将泛型转换为JRuby的一般指导原则?
答案 0 :(得分:2)
这是正确的转换。请记住Java在编译时擦除了泛型。引用the documentation:
如果使用Java泛型定义了Java类,则在编译期间会删除这些类型以实现向后兼容性。结果是。 JRuby在自动类型转换方面会遇到问题。例如,如果您有一个
Map<String,String>
,它将被视为一个简单的Map
,而JRuby将无法使用反射来确定正确的类型。