JAVA之變長參數(shù).doc

JAVA之變長參數(shù).doc

ID:49768064

大?。?5.00 KB

頁數(shù):3頁

時間:2020-03-04

JAVA之變長參數(shù).doc_第1頁
JAVA之變長參數(shù).doc_第2頁
JAVA之變長參數(shù).doc_第3頁
資源描述:

《JAVA之變長參數(shù).doc》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。

1、大家還記得前面的教程中,我給大家講解了使用數(shù)組作為形式參數(shù)來構(gòu)造可變長度的參數(shù),那時我告訴大家Java中支持直接的可變長度的參數(shù)的。今天我就給大家講解下Java中可變長度的參數(shù)的語法規(guī)則。在Java中,可變長度的參數(shù)在類型后面加三個點(…)來表示。如:?Java代碼1.static?void?yourMethodInVarargs(int?...?v)?{}??上面的yourMethodInVarargs方法可以使用0個或多個參數(shù)來調(diào)用。這里的v其實是一個int[]數(shù)組,然后在方法內(nèi)部使用v的時候和正常的數(shù)組一樣使用。下面我給大家一個使用可變長度參數(shù)

2、的例子:?Java代碼1.public?class?MainClass?{??2.??//?vaTest()?now?uses?a?vararg.??3.??public?static?void?vaTest(int...?v)?{??4.????System.out.print("Number?of?args:?"?+?v.length?+?"?Contents:?");??5.//Jdk1.5的增強循環(huán)語法就和C#的foreach一樣它在底層是使用的迭代子(Iterator)循環(huán)的方式(數(shù)組除外)支持的是數(shù)組和Collection(包括List和

3、Set等)也存在迭代子循環(huán)在多線程的即時失敗的異常6.7.????for?(int?x?:?v){??8.??????System.out.print(x?+?"?");??9.}??10.????System.out.println();??11.??}??12.??13.??public?static?void?main(String?args[])?{??14.????vaTest(10);?//?1?arg??15.????vaTest(1,?2,?3);?//?3?args??16.????vaTest();?//?no?args??17.

4、??}??18.}??上面的代碼中,我們定義了一個可變長度參數(shù)的方法vaTest,然后在其中,我們先輸出了當前有幾個參數(shù)被傳遞到方法中,然后我們用for循環(huán)將這些參數(shù)的值都輸出到控制臺。下面是它的運行結(jié)果。Numberofargs:1Contents:10Numberofargs:3Contents:123Numberofargs:0Contents:使用可變長度參數(shù)的時候大家需要注意一個問題,如果方法帶有多個參數(shù)的時候,可變長度的參數(shù)一定要放著最后一個參數(shù)的位置,否則報錯。這里我想大家都應(yīng)該可以明白為何要這樣做,因為參數(shù)長度可變,如果將可變長度的參

5、數(shù)放到前面的話,在運行時無法判斷參數(shù)是固定的還是可變的。同時,根據(jù)上述講解,我想大家也能推出一個結(jié)論,可變長度參數(shù)在一個方法內(nèi)只能有一個。為什么呢?因為可變長度的參數(shù)只能是最后一個參數(shù),如果有兩個可變長度的參數(shù)的話,那么就會出現(xiàn)一個可變長度的參數(shù)不是最后一個參數(shù)的情況,這是不允許的。我們前面講過方法的重載,那么是不是帶有可變長度的參數(shù)的方法也可以重載呢?答案是肯定的。下面我就給出一個例子,大家自己看看。?Java代碼1.class?MainClass?{??2.??static?void?vaTest(int...?v)?{??3.????Syste

6、m.out.print("vaTest(int?...):?"?+?"Number?of?args:?"?+?v.length?+?"?Contents:?");??4.????for?(int?x?:?v)??5.??????System.out.print(x?+?"?");??6.??7.????System.out.println();??8.??}??9.??10.??static?void?vaTest(boolean...?v)?{??11.????System.out.print("vaTest(boolean?...)?"?+?"N

7、umber?of?args:?"?+?v.length?+?"?Contents:?");??12.??13.????for?(boolean?x?:?v)??14.??????System.out.print(x?+?"?");??15.??16.????System.out.println();??17.??}??18.??19.??static?void?vaTest(String?msg,?int...?v)?{??20.????System.out.print("vaTest(String,?int?...):?"?+?msg?+?v.le

8、ngth?+?"?Contents:?");??21.??22.????for?(int?x?:?v)??1

當前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負責整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內(nèi)容,確認文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。