如何通过rJava调用"public void"方法

How to call "public void" method through rJava

在测试 Java API 时,我需要更改默认设置。根据 API 的文档,应该使用 class 中使用 "public void setType" 定义的方法来完成。假设 class 名称是 '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" 等

我想你想要

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)