Java部分
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.Arrays;
import java.util.LinkedList;
import java.util.List;
import java.util.stream.Collectors;
public class MyDemo {
public static void main(String[] args) {
try {
System.out.println("start");
String trainData = "1";
String labers = "1";
String testData = "-150 -92 -86 -97 -78 -68 -78 -150 -150 -81 -88 -90 -150 -150 -150 -150";
String[] args1=new String[]{"D:\\python\\python27\\python","D:\\work\\workspace\\fingerprintDatabase\\src\\main\\python\\hello.py", trainData,labers,testData};
Process pr=Runtime.getRuntime().exec(args1);
BufferedReader in = new BufferedReader(new InputStreamReader(pr.getInputStream()));
String line;
System.out.println("return:" + in.readLine());
while ((line = in.readLine()) != null) {
System.out.println(line);
}
in.close();
pr.waitFor();
System.out.println("end");
} catch (Exception e) {
e.printStackTrace();
}
}
}
python部分
if __name__ == '__main__':
testData = sys.argv[3]
testData = testData.split(";")
for i in testData:
i = i.split(" ")
i = list(map(int, i))
X = knn(trainData, i, labels, 1)
print(X)

本文详细介绍了如何在Java应用程序中调用Python接口,通过实际示例展示了具体步骤和注意事项,帮助开发者实现Java与Python的无缝集成。

1539

被折叠的 条评论
为什么被折叠?



