int main(int argc, char** argv)
这两个参数的作用是什么呢?argc和argv对应的英文全称 arguments counter 和 arguments vector ( arguments参数 counter计数器 vector指针 )。argc 是指命令行输入参数的个数,argv存储了所有的命令行参数。一般是从命令提示符中传值,也可以直接在java代码中赋值。而且这个数组的长度是动态的,根据传值的个数确定数组的长度。
1.从命令提示符中传值
我在桌面新建了一个文本文档重命名为TestMain.java,代码如下
public class TestMain {
public static void main(String[] args) {
System.out.println(“hello “+args[0]);
System.out.println(“welcome “+args[1]);
}}
按住shift在桌面单击鼠标右键,在此处运行命令提示符
输入命令javac TestMain.java编译成功后,在运行java TestMain aa bb cc dd
截图如下
此时如果输出args.length长度应该为4
2.直接在java代码中赋值,eclipse中代码如下
//测试java中main函数args数组的使用
public class TestMainArgs {/**
* @param args
*/
public static void main(String[] args) {
args = new String[]{“abc”,”def”,”ghi”};
System.out.println(args.length);
System.out.println(args[0]);}
}
输出结果是
3
abc