命令行參數(shù)可以是為應(yīng)用程序指定配置屬性的一種方式,Java也不例外。您可以從終端窗口運行Java應(yīng)用程序,而不是單擊操作系統(tǒng)中的應(yīng)用程序圖標(biāo)。除了應(yīng)用程序名稱之外,還可以跟隨許多參數(shù),然后將這些參數(shù)傳遞給應(yīng)用程序的起始點(即,在Java的情況下為main方法)。
例如,NetBeans具有許多啟動參數(shù),當(dāng)從終端窗口運行時,可以將這些參數(shù)傳遞給應(yīng)用程序(例如,-jdkhome指定要使用的JDK的版本,而不是與NetBeans應(yīng)用程序關(guān)聯(lián)的默認JDK)。
main方法
讓我們檢查一下main方法,看看傳遞給應(yīng)用程序的參數(shù)出現(xiàn)在哪里:
命令行參數(shù)可以在名為的String數(shù)組中找到args。
例如,讓我們考慮一個被調(diào)用的應(yīng)用程序,CommandLineArgs其唯一的操作是打印傳遞給它的命令行參數(shù):
命令行參數(shù)的語法
Java運行時引擎(JRE)期望遵循特定語法傳遞參數(shù),如下所示:
在上面,“java”調(diào)用JRE,后跟您正在調(diào)用的程序的名稱。接下來是程序的任何參數(shù)。程序可以采用的參數(shù)數(shù)量沒有限制,但順序很重要。JRE按照它們在命令行中出現(xiàn)的順序傳遞參數(shù)。例如,請考慮以上代碼段:
當(dāng)參數(shù)傳遞給Java程序時,args[0]是數(shù)組的第一個元素(上面的value1),args[1]是第二個元素(value2),以此類推。length()代碼定義了數(shù)組的長度。
通過命令行參數(shù)
在NetBeans中,我們可以傳遞命令行參數(shù),而不必構(gòu)建應(yīng)用程序并從終端窗口運行它。要指定命令行參數(shù):
右鍵單擊“項目”窗口中的“項目”文件夾。
選擇Properties選項以打開項目屬性窗口。
在右邊的Categories列表中,選擇Run。
在出現(xiàn)的Arguments文本框中,指定要傳遞給應(yīng)用程序的命令行參數(shù)。例如,如果我們在Arguments文本框中輸入AppleBananaCarrot并運行上面列出的CommandLineArgs程序,我們將得到輸出:
解析命令行參數(shù)
通常,會傳遞一個命令行參數(shù),其中包含一些關(guān)于如何處理傳遞的值的信息。通知應(yīng)用程序參數(shù)的參數(shù)通常在其名稱前有一兩個連字符。例如,用于指定JDK路徑的啟動參數(shù)的NetBeans示例是-jdkhome。
這意味著您需要解析命令行參數(shù),以確定如何處理這些值。有幾個用于解析命令行參數(shù)的Java命令行框架?;蛘撸绻枰獋鬟f的參數(shù)不多,也可以編寫一個簡單的命令行解析器:
上面的代碼要么打印參數(shù),要么將它們相加(如果它們是整數(shù))。例如,這個命令行參數(shù)將添加數(shù)字:
以上就是如何在Java中使用命令行參數(shù)的詳細內(nèi)容,希望對大家有幫助,更多Java最新資訊請繼續(xù)關(guān)注深圳達內(nèi)教育Java培訓(xùn)機構(gòu)官網(wǎng),每天會有精彩內(nèi)容分享與你。