Java千問:Java語言如何給main方法傳遞參數?-創新互聯
大家都知道,Java語言運行程序的入口方法叫做main,這個方法有一個參數,這就表示說,我們要運行主方法,就必須給main方法傳遞一個參數。但是,大家似乎對這個參數向來都是視而不見,從來都沒給主方法傳遞過參數。main作為Java程序運行的第一個方法,我們應該從哪里給這個方法傳遞參數呢?今天我們就用一篇短文來聊聊這個話題。
如何給main方法傳遞參數
大家請看下面這段代碼
這是一段誰都能看懂的代碼。通過代碼我們可以看到,main方法的參數是一個字符串數組,既然是一個字符串數組,就會包含多個字符串。那么,我們通過怎樣的方法能把多個字符串數組傳遞給main方法呢?很簡單,我們在運行Java程序的時候,在java命令后面寫上main方法所在的類名,在類名后面加空格,空格后面再寫上多個字符串,每個字符串之間也以空格隔開,就能把這些字符串傳遞給main方法。當然,這些字符串會被組織成一個字符串數組傳遞到main方法當中,見下圖
我們可以看到,在類名A的后面是一個空格,空格后面有兩個字符串,分別是“Hello”和“World”
這兩個字符串之間也用空格隔開,它們就是程序員傳遞給main方法的參數,這兩個字符串會被虛擬機組織成一個字符串數組。main方法中打印參數數組中下標為0那個的元素,所以輸出結果就是“Hello”
參數字符串中包含空格如何處理
我們給main方法傳遞參數的時候,各個字符串之間是以空格隔開的,如果某個字符串中本身就包含空格,那么原本是一個整體的字符串就會被分割成兩個,此事如何是好?在這種情況下,我們為了讓包含空格的字符串被虛擬機當作是一個整體,可以給字符串的兩端加上引號,見下圖
這一次我們給main方法傳遞了兩個字符串作為參數,其中第一個參數是“Hello World”,這個字符串中有一個空格,但是我們在字符串兩端加了引號,虛擬機就會把引號當中的空格看作是字符串中的一個普通字符,而不是把它當作分隔字符串的分隔符,所以運行結果就是“Hello World”。
參數字符串中包含引號如何處理
為了讓包含空格的字符串被虛擬機當作整體看待,我們把這個字符串的兩端加上了空格,但是這又會引發一個問題,那就是:如果參數字符串中又包含引號該怎么辦呢?此時我們就需要用轉義字符的形式書寫參數字符串中的引號,見下圖
把字符串中的引號以轉義字符的形式書寫,就能正確的把包含引號的字符串當作參數傳遞給main方法。
未傳遞參數的情況下打印參數數組元素情況如何
如果我們沒有給main方法傳遞參數,就直接打印參數數組args當中的元素,會怎么樣?很多人認為此時程序運行會拋出空指針異常。其實不然,虛擬機會創建一個長度為0的字符串數組傳遞到main方法中,我們訪問這個長度為0的數組,拋出的是數組越界異常,而非空指針異常。不要忘記,Java語言的數組長度是允許為0的哦!
如果希望系統學習Java編程,可以點擊這里觀看我的視頻課程,有問題也可以加入我的QQ群291839907一起討論
創新互聯www.cdcxhl.cn,專業提供香港、美國云服務器,動態BGP最優骨干路由自動選擇,持續穩定高效的網絡助力業務部署。公司持有工信部辦法的idc、isp許可證, 機房獨有T級流量清洗系統配攻擊溯源,準確進行流量調度,確保服務器高可用性。佳節活動現已開啟,新人活動云服務器買多久送多久。
本文題目:Java千問:Java語言如何給main方法傳遞參數?-創新互聯
轉載來源:http://www.xueling.net.cn/article/idcgi.html