题目:
编写一个程序,打印出从命令行获得的三个参数。为此,需要确定命令行数组中String的下标。
该题旨在考察:public static void main(String[] args){};
page 31:main()方法的参数是一个String对象的数组。在这个程序中并未用到args,但是Java编译器要求必须这样做,因为args要用来存储命令行参数。
程序代码:
1 public class Practices_2_10 { 2 3 public static void main(String[] args) { 4 5 System.out.println("命令行数组长度:" + args.length); 6 if (args.length < 3) { 7 System.out.println("请输入3个参数"); 8 } else { 9 for (int i = 0; i < args.length; i++) { 10 System.out.println("第" + i + "个:" + args[i]); 11 } 12 } 13 } 14 15 }
明白了考察点,代码很好写。
注意:我在Eclipse里写的这段小程序,去命令行里执行javac,java。由于忘记了,该类会有一个默认的包名,导致异常:java.lang.NoClassDefFoundError.
既然看到了java.lang,多说一句:java.lang是默认导入到每个java文件中的,所以他的所有类都可以被直接使用。
命令行命令:
javac Practices_2_10.java
java Practices_2_10 1 2 3