噢哟、、想要给args赋值? 嗯嗯。。其实说白了吧 不是每个类中带有main方法 他就是程序入口 比如class Test{
public static void main(String[] args){
System.out.println("这边是Test main方法"); }}public class Test1{
public static void main(String[] args){
System.out.println("我这边是Test1的main方法"); System.out.println("我将调用Test的main方法"); Test.main(agrs); // 一样可以哒~ }}也还可以这样 public class Test{
public static void main(String[] args){
for(String s : args){
System.out.println(s); // 赋值也可以哒~ } String ar[] ={"A","B","C","D","E"}; args = ar; // 不用怀疑 这边是对象引用所以args = ar 那么 args的指针就指向了ar的String数组 // 现在的args与原先虚拟机传递的args已经是俩个不同的值了。 //但是对象还是那个——args for(String s : args){
System.out.println(s); // 赋值也可以哒~ } }} 不知道是不是你想要的答案 不懂再问哈
在命令行中,先编译如第一行,然后在运行,如第二行,运行时你输入 数字 就代表默认的args数组的值。
Java应用程序的主入口方法main(String[] args),表示该方法需要接收一个字符串数组类型的参数,如果该参数不指定,args接收的是null。
JAVA程序中 Main(String []args)的args 赋值方法:在java命令执行程序时指定参数。
举例:
public class Test{
public static void main(String[] args){
for(int i = 0;iSystem.out.println(args[i]);
}
}
}
/*
然后在命令符操作界面,使用"javac Test.java"命令编译后,使用java Test a b c d zhongguo 命令执行Test程序同时指定任意个参数值,参数值之间需要用空格隔开。
输出结果为
a
b
c
d
zhongguo
*/
我们不能人为地为args数组赋值,这是因为这个数组存放了我们传给应用程序的参数,而这是由Java自动完成的。
我们可以通过如下的方法为应用程序传入参数:
java com.xxx.MyClass args1 args2 args3
这样args数组就有了三个参数,他们分别为:
args[0]里放的是"args1"字符串
args[1]里放的是"args2"字符串
依次类推
命令行执行.class文件时: java xxx arg1 arg2...
eclipse右键运行下面有configuration
public static void main(String[] args) 是执行程序入口函数,一组只有一个。
为什么要在程序内给它赋值呢?