将值从一个java程序传递到另一个java程序

将值从一个java程序传递到另一个java程序,java,Java,我编写了一个Java程序,可以在运行时执行另一个Java程序。计划如下: String[] cmd = { s, Integer.toString(n) }; Process pro=Runtime.getRuntime().exec(cmd); import java.io.*; 公共类执行官{ 公共静态void main(字符串argv[]){ int i=5,j=6,k=7; BufferedReader rd=新的BufferedReader(新的InputStreamReader(S

我编写了一个Java程序,可以在运行时执行另一个Java程序。计划如下:

String[] cmd = { s, Integer.toString(n) };
Process pro=Runtime.getRuntime().exec(cmd);
import java.io.*;
公共类执行官{
公共静态void main(字符串argv[]){
int i=5,j=6,k=7;
BufferedReader rd=新的BufferedReader(新的InputStreamReader(System.in));
试一试{
InputStreamReader isr=新的InputStreamReader(System.in);
BufferedReader br=新的BufferedReader(isr);
System.out.println(“输入类名”);
字符串s=br.readLine();
Process pro=Runtime.getRuntime().exec;
BufferedReader in=新的BufferedReader(新的InputStreamReader(pro.getInputStream());
字符串行=null;
而((line=in.readLine())!=null){
系统输出打印项次(行);
}
in.close();
}捕获(异常错误){
err.printStackTrace();
}
}
}
如果我执行这个程序,它将提示用户输入任何要执行的类名(Java程序)。这是使用以下代码段完成的
Process pro=Runtime.getRuntime().exec

一旦用户输入Java类名,我应该能够将值5、6、7传递给用户输入的Java类。一次只能传递一个值,并应计算该数值的平方


如何执行此操作?

您可以将int参数传递给第二个Java程序,如下所示:

String[] cmd = { s, Integer.toString(n) };
Process pro=Runtime.getRuntime().exec(cmd);
。。。或作为单个
字符串

Process pro=Runtime.getRuntime().exec(String.format("%s %d", s, n);

您可以将int参数传递给第二个Java程序,如下所示:

String[] cmd = { s, Integer.toString(n) };
Process pro=Runtime.getRuntime().exec(cmd);
。。。或作为单个
字符串

Process pro=Runtime.getRuntime().exec(String.format("%s %d", s, n);

在第二个程序中,您可以实现一个服务器套接字,然后在第一个程序中,您可以编写一个客户端套接字,将消息发送到第二个应用程序


您可以看到以下文档:

在第二个程序中,您可以实现一个服务器套接字,然后在第一个程序中,您可以编写一个客户端套接字,用于向第二个应用程序发送消息


您可以看到以下文档:

“有人能告诉我怎么做吗?”您能问一个具体的问题吗。2)阅读并执行3的所有建议(使用代码< > StudioBuffer-<代码> >代码,用于1.5 + 4)考虑直接从代码(不<代码>进程>代码>涉及)5调用其他java类,根据常规约定缩进代码。代码缩进是为了帮助读者,而代码读起来就像狗的早餐一样。@AndrewThompson如果你不能理解这个问题,我很抱歉。我试过编辑这个问题。现在就看一遍,告诉我怎么做?“有人能告诉我怎么做吗?”你能问一个具体的问题吗。2)阅读并执行3的所有建议(使用代码< > StudioBuffer-<代码> >代码,用于1.5 + 4)考虑直接从代码(不<代码>进程>代码>涉及)5调用其他java类,根据常规约定缩进代码。代码缩进是为了帮助读者,而代码读起来就像狗的早餐一样。@AndrewThompson如果你不能理解这个问题,我很抱歉。我试过编辑这个问题。现在就看一遍,告诉我怎么做?我已经试过了,但是我应该如何处理我调用的java类中的n值。我已经用这种方式尝试了
import java.io.*;公共类测试{public static void main(String[]args)抛出IOException{BufferedReader rd=new BufferedReader(new InputStreamReader(System.in));String ns=rd.readLine();int n=Integer.parseInt(ns);System.out.println(“数字的平方为”+n*n);}
。我是否应该将“n”的值作为命令行参数读取?参数n可以作为字符串从args[0]访问;i、 你需要把它重新解析成int,我还有一个疑问。如果我使用您的代码,我可以直接将n的值传递给我正在调用的java类。如果我有两个值,比如i=5和j=6,我如何将这些值一次传递给另一个java类?我已经尝试过了,但是我应该如何处理我调用的java类中的n值。我已经用这种方式尝试了
import java.io.*;公共类测试{public static void main(String[]args)抛出IOException{BufferedReader rd=new BufferedReader(new InputStreamReader(System.in));String ns=rd.readLine();int n=Integer.parseInt(ns);System.out.println(“数字的平方为”+n*n);}
。我是否应该将“n”的值作为命令行参数读取?参数n可以作为字符串从args[0]访问;i、 你需要把它重新解析成int,我还有一个疑问。如果我使用您的代码,我可以直接将n的值传递给我正在调用的java类。如果我有两个值,比如i=5和j=6,我如何将这些值一次传递给另一个java类?