这个例子展示了如何调用MATLAB®在Java中生成幻方的方法®应用
MATLAB函数定位 |
|
Java代码位置 |
|
抄袭MagicSquareExample
MATLAB附带到您的工作文件夹的文件夹:
copyfile(完整文件)(matlabroot,“工具箱”,“javabuilder”,“例子”,“MagicSquareExample”))
在MATLAB命令提示符处,导航到新的MagicSquareExample \ MagicDemoComp
工作文件夹中的子文件夹。
检查makesqr.m
功能。
函数make qr(x) Y = magic(x);disp (y);
在MATLAB命令提示符处,输入makesqr(5)
.
输出是一个5 × 5矩阵。
17 24 1 8 15 23 5 7 14 16 4 6 13 20 22 10 12 19 21 3 11 18 25 2 9
创建一个封装makesqr.m
通过使用库的编译器应用程序或compiler.build.javaPackage
.
在项目中使用以下信息:
包名 | 魔方 |
类名 | 魔法 |
文件编制 | makesqr.m |
例如,如果您正在使用compiler.build.javaPackage
类型:
buildResults=compiler.build.javaPackage(“makesqr.m”,...“包装名称”,“magicsquare”,...“类名”,“魔法”);
有关详细信息,请参阅中的说明生成Java包并构建Java应用程序.
为访问MATLAB函数的Java应用程序编写源代码。
此示例的示例应用程序位于MagicSquareExample \ MagicDemoJavaApp \ getmagic.java
.
该程序执行以下操作:
创建一个MWNumericArray
数组来存储输入数据
实例化一个魔法
对象
调用makesqr
方法,其中第一个参数指定输出参数的数量,并将下列参数按输入参数的顺序传递给函数
使用试一试
-抓住
块来处理异常
使用MWArray
方法
在MATLAB中,导航到MagicDemoJavaApp
文件夹。
复制生成的magicsquare.jar
将文件包放入此文件夹。
如果你使用compiler.build.javaPackage
类型:
复制文件(完整文件)('..',“MagicDemoComp”,“magicsquarejavaPackage”,“magisquare.jar”))
如果你使用库编译器,输入:
复制文件(完整文件)('..',“MagicDemoComp”,“magicsquare”,“for_testing”,“magicsquare.jar”))
在系统命令窗口中,导航到PlotDemoJavaApp
文件夹。
使用爪哇语
.
在窗户上®,执行此命令:
javac-classpath“matlabroot
\工具箱\javabuilder\jar\javabuilder.jar”;\magicsquare.jar getmagic.java
在UNIX®,执行此命令:
javac-classpath“matlabroot
/工具箱/ javabuilder / jar / javabuilder.jar”:。/ magicsquare.jar getmagic.java
代替
与您的MATLAB或MATLAB运行时安装文件夹。例如,在Windows上,路径可能是matlabroot
C:\ProgramFiles\MATLAB\R2021b
.
有关详细信息,请参阅编译和运行MATLAB生成的Java应用程序.
在系统命令提示符下,运行应用程序。
在Windows上,键入:
java-类路径matlabroot
jar \ \工具箱\ javabuilder \ javabuilder.jar”;。\ makesqr.jar getmagic 5
在UNIX中,类型:
java-类路径:“matlabroot
/toolbox/javabuilder/jar/javabuilder.jar::/makesqr.jar getmagic 5
应用程序在命令窗口中输出一个5乘5的幻方。
17 24 1 8 15 23 5 7 14 16 4 6 13 20 22 10 12 19 21 3 11 18 25 2 9
要继续此示例,请执行以下操作:
尝试在其他计算机上运行生成的应用程序。
尝试使用为包构建安装程序compiler.package.installer
.
尝试集成一个包含多个功能的包。
libraryCompiler
|compiler.build.javaPackage
|compiler.package.installer
|世纪挑战集团
|deploytool