Java之Eclipse中给参数args传递参数和使用命令行
转https://blog.****.net/xyb890826/article/details/41965935
引言
一、传递参数
Main方法的声明与众不同,它具有String[]类型参数args。很明显的,args是一个字符串数组。main方法就像一个带参数的普通方法。可以通过传递实参来调用一个普通方法。那么问题来了,能给main方法传递参数吗?如果能怎么传递呢?
例如在TestMain类中的main方法是被A中的方法调用的,如下所示:
-
class A{
-
public static void main(String[]args){
-
String[] strings = {"New York","Boston","Atlanta"};
-
TestMain.main(strings);
-
}
-
}
-
class TestMain{
-
public static void main(String[]args){
-
for(int i = 0;i < args.length;i++)
-
System.out.println(args[i]);
-
}
-
}
main方法就和其他方法一样,可以被传参数被调用。此外,还可以从命令行传递参数。
二、使用命令行
向main方法传递字符串,运行程序时,可以从命令行给main方法传递字符串参数。例如,用三个字符串
arg0 arg1 arg2启动程序TestMain:javaTestmain arg0 arg1 arg2
其中,参数arg0、arg1、arg2都是字符串,没有必要用双引号扩住它们。如果字符包含空格,那就必须用双引号扩住,如:java TestMain "First num" alpha 53
它用三个字符串"First num"、alpha、53启动这个程序,其中53是一个数值字符串。因为"First num"是一个字符串,所以要用双引号扩住它们。
如计算器程序的实现。要开发一个程序,完成整型数的算术运算。程序接收三个参数:一个整数、紧随其后的一个运算符以及另一个整数。如用如下命令对两个整数进行相加:java Calculator 2 + 3
程序将显示输出为:2 + 3 = 5
-
class Calculator{
-
public static void main(String[]args){
-
if(args.length != 3){
-
System.out.println("Usage:java Calculator operand1 operator operand2");
-
// System.exit(0);
-
}
-
int result = 0;
-
switch(args[1].charAt(0)){
-
case '+':result = Integer.parseInt(args[0]) + Integer.parseInt(args[2]);break;
-
case '-':result = Integer.parseInt(args[0]) - Integer.parseInt(args[2]);break;
-
case '*':result = Integer.parseInt(args[0]) * Integer.parseInt(args[2]);break;
-
case '/':result = Integer.parseInt(args[0]) / Integer.parseInt(args[2]);break;
-
}
-
System.out.println(args[0]+' '+args[1]+' '+args[2]+" = "+result);
-
}
-
}
我们尝试在Dos命令窗口中输入:java Calculator 2 + 3 其结果如下所示:
并没有期望的输出:2 + 3 = 5
这是因为在Eclipse中的命令行参数的使用不是直接在cmd窗口中输入的。下面进入本博文正题,如何在Eclipse中使用命令行。
正文
第一种简单的快捷的方式如下:
Q: java 中args 参数如何传递(Eclipse)不用cmd
A: Eclipse菜单栏中的Run-Run Configurations,其中有个(x)= Arguments,单击该选项,你在Program arguments 下面的空白栏中填写参数几个,,多个参数用空格隔开即可!
Q:如何在命令行中提交input
A: ctrl + d
Q: java中用什麼代碼來接收args參數
A: 如 int k = Integer.parseInt(args[0]);
第二种方式是将控制台作为cmd的输入窗口进行命令行参数的传递
虽然我们已经有了像 Eclipse 这样高级的 IDE,但是我们有时候也是需要在开发的时候使用 Windows 的命令行,来运行一些独立的程序。在两个程序中切换来切换去是很麻烦的。所以 Eclipse 提供了这样的工具,让我们可以在 Eclipse 中使用 Windows 命令行。 具体的实现步骤如下所示:
第一步:设置一个新的外部配置工具
在 Eclipse 中,选择 “Run -> External Tools -> External Tools Configurations”
第二步:点击"Program",再点击 “New Launch Configuration”
第三步:New Configuration 界面
第四步:提供命令行配置的详细信息
Name:就是你配置的名字,可根据自己的习惯随便取
Location:CMD.exe 的文件位置 ,一般来说windows中的位置是:c:\Windows\System32\cmd.exe
Working Directory:就是命令行打开后的默认工作路径 ,可是设置为存储的位置,如:c:\
第五步:点击上图中的“Common”,在选中“Allocate Console”复选框
这个选项是把 Eclipse 工作台作为命令行来获得输入和输出。
第六步:点击“Run”
你将打开一个 F: 为工作路径的命令行 (就是第四步中你所设置的Working Directory路径)
这样就设置好了以控制台输入作为cmd.exe,从而方便的使用IDE集成工具Eclipse进行Windows命令的输入了。是不是很简单呢
简单的验证一下是否可以运行,效果如下图所示: