在本教程中,我們將借助示例學(xué)習(xí)Java命令行參數(shù)。
Java中的命令行參數(shù)允許我們?cè)诔绦驁?zhí)行期間傳遞參數(shù)。
顧名思義,參數(shù)是通過命令行傳遞的。
class Main { public static void main(String[] args) { System.out.println("命令行參數(shù)是"); //遍歷所有參數(shù) for(String str: args) { System.out.println(str); } } }
讓我們嘗試使用命令行運(yùn)行該程序。
1.編譯代碼
javac Main.java
2.運(yùn)行代碼
java Main
現(xiàn)在假設(shè)我們要在運(yùn)行程序時(shí)傳遞一些參數(shù),我們可以在類名之后傳遞參數(shù)。例如,
java Main apple ball cat
這里apple,ball和cat是通過命令行傳遞給程序的參數(shù)?,F(xiàn)在,我們將獲得以下輸出。
命令行參數(shù)是 Apple Ball Cat
在上面的程序中,main()方法包含一個(gè)名為args的字符串?dāng)?shù)組作為參數(shù)。
public static void main(String[] args) {...}
String數(shù)組存儲(chǔ)通過命令行傳遞的所有參數(shù)。
注意:參數(shù)始終存儲(chǔ)為字符串,并且始終用空格分隔。
每個(gè)Java程序的main()方法僅接受字符串參數(shù)。 因此,不可能通過命令行傳遞數(shù)字參數(shù)。
但是,稍后我們可以將字符串參數(shù)轉(zhuǎn)換為數(shù)值。
class Main { public static void main(String[] args) { for(String str: args) { //轉(zhuǎn)換為整數(shù)類型 int argument = Integer.parseInt(str); System.out.println("整型參數(shù): " + argument); } } }
讓我們嘗試通過命令行運(yùn)行程序。
//編譯代碼 javac Main.java //運(yùn)行代碼 java Main 11 23
這里11和23是命令行參數(shù)。現(xiàn)在,我們將獲得以下輸出。
Arguments in integer form 11 23
在上面的示例中,請(qǐng)注意以下行
int argument = Intege.parseInt(str);
在此,Integer類的parseInt()方法將字符串參數(shù)轉(zhuǎn)換為整數(shù)。
同樣,我們可以使用parseDouble()和parseFloat()方法將字符串分別轉(zhuǎn)換為double和float。
注意:如果無法將參數(shù)轉(zhuǎn)換為指定的數(shù)值,則會(huì)拋出名為NumberFormatException的異常。