arrayの次の例を確認してください。 THX @Aubin
import java.lang.reflect.InvocationTargetException;
import org.mozilla.javascript.Context;
import org.mozilla.javascript.Scriptable;
import org.mozilla.javascript.ScriptableObject;
import org.mozilla.javascript.annotations.JSFunction;
public class Main {
public static void main(String[] args) {
Context cx = Context.enter();
System.out.println("Started : " + ArrayTest.class.getSimpleName());
try {
Scriptable scope = cx.initStandardObjects();
ScriptableObject.defineClass(scope, ArrayTest.class);
String testCode = "new ArrayTest().getLocation().join(',');";
Object result = cx.evaluateString(scope, testCode, "<cmd>", 1, null);
System.err.println(Context.toString(result));
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (InstantiationException e) {
e.printStackTrace();
} catch (InvocationTargetException e) {
e.printStackTrace();
} finally {
Context.exit();
}
}
public static class ArrayTest extends ScriptableObject {
@JSFunction
public double[] getLocation() {
double[] array = {253.1, 152.0, -32.5};
return array;
}
@Override
public String getClassName() {
return getClass().getSimpleName();
}
}
}
出力
Started : ArrayTest
253.1,152,-32.5
!出来た! – Devonnuri