![Java王者归来:从入门迈向高手](https://wfqqreader-1252317822.image.myqcloud.com/cover/394/27563394/b_27563394.jpg)
上QQ阅读APP看书,第一时间看更新
7-6 Java命令行参数
在2-2节有介绍main()方法,这是Java程序执行的起点,在这个方法中的参数是“String[ ]args”,经过本章内容说明相信读者可以了解args是一个字符串数组。这个设计表示,Java允许在执行程序时,在命令提示环境下输入一些额外参数,例如,如果想设计屏幕显示文件程序,可以在此读入文件名称。
7-6-1 Java程序执行的参数数量
过去可以在命令提示环境输入下列命令执行程序:
java ch7_25
上述是假设所执行的程序是ch7_25.java,然后从main()开始执行程序,在没有参数的情况,如果这时输出args.length,可以得到0,因为没有在“java ch7_25”后面加上任何参数。如果有加入参数,args.length会记录参数数量,当有多个参数时,各参数字符串间需用空格隔开。
程序实例ch7_25.java:输出args.length的应用,同时测试没有参数,一个参数或两个参数的结果。
![](https://epubservercos.yuewen.com/9E44AA/15825993204148006/epubprivate/OEBPS/Images/Figure-P115_759009.jpg?sign=1738878853-a1s7NqmeyEjLN5OQC0Nz09N9zXX08LBW-0-e42df16304a5e87b99eccabe4a9230a6)
执行结果
![](https://epubservercos.yuewen.com/9E44AA/15825993204148006/epubprivate/OEBPS/Images/Figure-P115_557832.jpg?sign=1738878853-o0Zx5qIO74SKjDu8qowQJvyylkJVKTxk-0-2ba187045ff59c11e45ace6eda78a565)
如果执行上述程序,在末端加上readme.txt或更多字符串,将有不同的执行结果。
![](https://epubservercos.yuewen.com/9E44AA/15825993204148006/epubprivate/OEBPS/Images/Figure-P115_557835.jpg?sign=1738878853-4UtEg47r0gS5PegpiVVcyo0MSA4ZyNHr-0-50ea3d61824ef2ad44daa67efca469ed)
7-6-2 命令行参数内容
在上述设计中如果想要获得输入参数的内容,可以使用args[i]方式取得,i是参数的索引。
程序实例ch7_26.java:显示程序执行时命令行的参数内容。
![](https://epubservercos.yuewen.com/9E44AA/15825993204148006/epubprivate/OEBPS/Images/Figure-P115_759010.jpg?sign=1738878853-JMOVRkUNYz2VVRs5Qmz531nJYqVxKvDC-0-bdc97a0ad21f904b6947ae1f04cfe63d)
执行结果
![](https://epubservercos.yuewen.com/9E44AA/15825993204148006/epubprivate/OEBPS/Images/Figure-P115_557845.jpg?sign=1738878853-mWQlv3rSUzYlghmMrF3myIVza7hEyb0N-0-fd334e52a9fccfd47a24ce34a32c5a2b)
在上述右方执行中,如果想将多个参数My name is JK Hung用一个字符串表示,可以在字符串左右加上双引号符号,可参考下列执行结果。
![](https://epubservercos.yuewen.com/9E44AA/15825993204148006/epubprivate/OEBPS/Images/Figure-P115_759014.jpg?sign=1738878853-dB2XPIvv5PIZmGjWJITmxNhTMtuGUsgA-0-1d4b766eb3867e83c580f4d13fdc4ac1)