如何通过rJava调用“public void”方法

时间:2017-01-17 01:47:40

标签: r rjava

在测试Java API时,我需要更改默认设置。根据API的文档,它应该使用类中定义的方法使用“public void setType”来完成。假设类名是'Node',使用

引用
library(rJava) 
.jinit(classpath=jarPath)
Node <- J("Node")

在其文档的Java示例中,它被称为

 Node nodeX = new Node("X", new Variable[]{x});
 nodeX.setType(Type.TEMP);

nodeX的默认类型是“CONTEMP”。如何通过rJava在R中调用“setType”方法将其默认值更改为另一个?我们假设'Type'是一个枚举变量,它有几个选项,包括“CONTEMP”,“TEMP”等。

1 个答案:

答案 0 :(得分:0)

我想你想要

library(rJava) 
.jinit(classpath=jarPath)
variable <- .jarray(new(J("package.name.Variable", input_arg))
Node <- new(J("package.name.Node"), variable)

然后你可以做

type <- J("package.name.Type")$TEMP
Node$setType(type)