今天就跟大家聊聊有關(guān)Java 中怎么使用可變參數(shù),可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。
成都創(chuàng)新互聯(lián)是少有的成都網(wǎng)站制作、成都做網(wǎng)站、營(yíng)銷(xiāo)型企業(yè)網(wǎng)站、小程序開(kāi)發(fā)、手機(jī)APP,開(kāi)發(fā)、制作、設(shè)計(jì)、友情鏈接、推廣優(yōu)化一站式服務(wù)網(wǎng)絡(luò)公司,成立于2013年,堅(jiān)持透明化,價(jià)格低,無(wú)套路經(jīng)營(yíng)理念。讓網(wǎng)頁(yè)驚喜每一位訪客多年來(lái)深受用戶好評(píng)
一、概念
JDK5.0出現(xiàn)的新特性。將同一個(gè)類(lèi)中,多個(gè)方法名相同、參數(shù)類(lèi)型相同、返回類(lèi)型相同,僅僅是參數(shù)個(gè)數(shù)不同的方法抽取成一個(gè)方法,這種方法稱(chēng)為可變參數(shù)的方法。
1、好處:
提高代碼的重用性和維護(hù)性。
2、語(yǔ)法:
public void show(String... str){ }
3、可變參數(shù)傳值的四種方式:
一個(gè)值也不傳,可變參數(shù)會(huì)接收到長(zhǎng)度為0的數(shù)組。
傳null,可變參數(shù)會(huì)接收到null。
傳數(shù)組,可變參數(shù)會(huì)接收到數(shù)組。
傳一個(gè)到多個(gè)數(shù)組元素值,可變參數(shù)會(huì)接收到數(shù)組。
4、可變參數(shù)和數(shù)組作為方法參數(shù)時(shí)的區(qū)別:
從個(gè)數(shù)來(lái)看,可變參數(shù)只能有一個(gè),數(shù)組可以有多個(gè)。
從定義位置來(lái)看,可變參數(shù)只能定義在參數(shù)列表的末尾,數(shù)組可以在任何位置。
從傳參的形式來(lái)看,可變參數(shù)可以傳數(shù)組、null、0個(gè)參數(shù)、一到多個(gè)參數(shù),數(shù)組可以傳數(shù)組引用、數(shù)組對(duì)象、null。
二、代碼示例
簡(jiǎn)單示例如下:
public class Demo { public void show(String... str){ if(null == str){ System.out.println("is null"); } if(null != str){ System.out.println("is length:" + str.length); } } public static void main(String[] args) { Demo demo = new Demo(); // 一個(gè)值都不傳遞 demo.show(); // 傳數(shù)組對(duì)象 demo.show(new String[]{"piao","bill","pig"}); // 傳多個(gè)元素值,會(huì)當(dāng)成數(shù)組處理 demo.show("piao","bill","pig","test"); // 傳null,但是這個(gè)參數(shù)不可用 demo.show(null); } }
方法重載:方法名相同,但是參數(shù)列表不一致。
public class Demo { public void show(String str){ System.out.println("is value:" + str); } public void show(String... str){ System.out.println("is length:" + str.length); } public static void main(String[] args) { Demo demo = new Demo(); // 一個(gè)值都不傳遞 demo.show(); // 傳數(shù)組對(duì)象 demo.show(new String[]{"piao","bill","pig"}); // 傳多個(gè)元素值,會(huì)當(dāng)成數(shù)組處理 demo.show("piao","bill","pig","test"); // 傳null,但是這個(gè)參數(shù)不可用 demo.show("piao"); } }
看完上述內(nèi)容,你們對(duì)Java 中怎么使用可變參數(shù)有進(jìn)一步的了解嗎?如果還想了解更多知識(shí)或者相關(guān)內(nèi)容,請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝大家的支持。