黑马程序员技术交流社区

标题: 有个问题困扰了好久 [打印本页]

作者: black.horse    时间: 2015-12-14 17:12
标题: 有个问题困扰了好久
main方法的参数args是什么时候传递的?
public static void main(String[] args) {}


作者: 周亚飞    时间: 2015-12-14 17:12
class Args {
        public static void main(String[] args) {
                for (String arg : args) {                        //打印出参数args(遍历字符串数组args)
                        System.out.println(arg);
                }
        }
}

C:\Users\jw\Desktop>javac Args.java

C:\Users\jw\Desktop>java Args hello world        //是命令行参数,参数在这里传递的.打印结果如下
hello
world
作者: 陈根祥    时间: 2015-12-14 17:23
来学习,自学中大家加油,走上人生巅峰
作者: zcbcba123    时间: 2015-12-14 18:45
本帖最后由 zcbcba123 于 2015-12-14 20:23 编辑

2楼好专业~~~
作者: cai602098596    时间: 2015-12-14 19:12
顶 一楼
作者: jiangshicun007    时间: 2015-12-14 19:12
这个是运行程序前给它的参数。。

如果你在你程序要用这个参数的话就需要在运行前指定。。

比如java HelloWorld ceshi
那么在HelloWorld的main方法里面 args就是{"ceshi"}
多个的话用空格隔开..
比如java HelloWorld ceshi ceshi1 ceshi2
那么那么在HelloWorld的main方法里面 args就是{"ceshi", "ceshi1", "ceshi2"}
也就是说你假如你的程序是这样的
public class HelloWorld{
public static void main(String[] args) {
System.out.println(args[0]);
}
}
然后你编译
运行的时候这样运行
java HelloWorld hello
那么这个程序就会输出hello
之所以是Stirng 是因为我们只能以字符串的形式输入
名字的话随便取。。只要符合java规定就行
楼主你技术分够了,我还差好多,给我呗!!!!
作者: houbofly    时间: 2015-12-19 22:40
好专业额
作者: cj286    时间: 2015-12-24 14:40
args是从控制台,编译运行的时候传入的,
作者: 雨来    时间: 2015-12-24 20:17
是运行的时候,传递的;在编译之后,调用虚拟机之前




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2