"Java" (外部计算系统)
ExternalEvaluate 用法
- ExternalEvaluate["Java",code] 在 Java REPL 中执行代码字符串并以 Wolfram 语言表达式的形式返回结果.
使用说明
- ExternalEvaluate 使用的 Java 运行时与 J/Link 运算如 LoadJavaClass 和 JavaNew 使用的一样,允许 J/Link 和 ExternalEvaluate 间的无缝互通.
- J/Link 通过其 AddToClassPath 函数可见的类在 ExternalEvaluate 中也同样对 Java 代码可见.
- 在 ExternalEvaluate 中定义的 Java 类会自动加载到 J/Link 并可与其他 Java 类一样被使用.
范例
打开所有单元关闭所有单元基本范例 (5)
没有自然语言表示的对象会以 JavaObject 表达式的形式返回,就像在 J/Link 中一样:
类型 > 并在下拉菜单中选择 Java 可获取一个使用 ExternalEvaluate 进行计算的代码单元格:
范围 (2)
可在不封装在一个完整的类定义的情况下定义一个 Java 方法. 记住这种方法定义为公有且静态 (public and static),所以可以删除 "public static" 前缀:
方法定义返回一个可以调用的 ExternalFunction 对象:
public class Node {
private String data;
private Node next;
public Node(String data) {
this.data = data;
next = null;
}
public String getData() {
return data;
}
public void setData(String data) {
this.data = data;
}
public Node getNext() {
return next;
}
public void setNext(Node next) {
this.next = next;
}
}
类定义会返回可在 J/Link 中直接使用的 J/Link JavaClass 表达式:
还可以从 ExternalEvaluate 中直接调用新的类: