操作的结果是matlab函数作为一个包被引入,在eclipse中可以import这个java包, 从而建立matlab类的对象. 此操作并不能直接得到matlab的java代码, 只能通过接口对matlab函数进行访问.
此次试验以matlab程序,PCA算法为例
1 matlab端准备:
1.
a)
b)
l设置后,重启matlab才能有效。
l用getenv JAVA_HOME,在Matlab的命令窗口中试验,看看得到的返回值正确方可说明其对Matlab生效了。
l添加
l添加%JAVA_HOME%/bin/javac
2.
a)
b)
c)
d)
由于matlab文件要以函数方式被调用,所以如果没有函数头,要加一个函数头
function LiS_110402_AR_PCA_rdm()
从新build即可完成修改.
在java中使用这个matlab函数,进行如下形式调用即可. 由于例子中PCA在函数中输出结果,所以没有返回值
import com.mathworks.toolbox.javabuilder.*;
import PCA.*;
public class test {
public static void main(String[] args) throws MWException {
// TODO Auto-generated method stub
PC p =new PC();
Object[] a = null;
float b=0.0f;
p.LiS_110402_AR_PCA_rdm();
System.out.println("complate");
}
}
运行后即在java窗口显示结果:
AR PCA
test_mode =
6
Data reading...
ans =
75.2941
complate