Java可變個(gè)數(shù)形參的方法實(shí)例代碼
前言
小小知識(shí),不值一提,了解了也不能讓你提高身價(jià),但是不了解你就是比別人少知道點(diǎn)!事兒就是這么個(gè)事兒,直接正題吧! 直接看代碼
演示
優(yōu)先級(jí)
當(dāng)方法1無(wú)參和方法2有參存在時(shí),執(zhí)行上面的main方法調(diào)用并觀看結(jié)果:
當(dāng)只有可變參數(shù)方法存在時(shí),再重新執(zhí)行看看
多個(gè)參數(shù)傳參情況
一是多個(gè)參數(shù)逗號(hào)隔開(kāi)傳參
二是直接可以傳數(shù)組
總結(jié)
①調(diào)用的時(shí)候參數(shù)可不傳或傳多個(gè)
②如果有無(wú)參或者有可數(shù)個(gè)參數(shù)的重載方法存在時(shí),調(diào)用同名方法時(shí),可變參數(shù)方法的優(yōu)先級(jí)靠后,沒(méi)有其他重載方法,則自動(dòng)調(diào)用可變參數(shù)方法
③與形參類(lèi)型相同的數(shù)組直接不能構(gòu)成重載,可以認(rèn)為,可變參數(shù)代替了數(shù)組參數(shù)
④在參數(shù)方法的形參中,可變個(gè)數(shù)形參必須聲明在末尾,并且最多只能聲明一個(gè)可變形參
另外:
簡(jiǎn)單測(cè)試代碼
package com.liu.susu.other; /** * 可變形參方法 * 注意:①調(diào)用的時(shí)候參數(shù)可不傳或傳多個(gè) * ②如果有無(wú)參或者有可數(shù)個(gè)參數(shù)的重載方法存在時(shí),調(diào)用同名方法時(shí),可變參數(shù)方法的優(yōu)先級(jí)靠后, * 沒(méi)有其他重載方法,則自動(dòng)調(diào)用可變參數(shù)方法 * ③與形參類(lèi)型相同的數(shù)組直接不能構(gòu)成重載,可以認(rèn)為,可變參數(shù)代替了數(shù)組參數(shù) * ④在參數(shù)方法的形參中,可變個(gè)數(shù)形參必須聲明在末尾,并且最多只能聲明一個(gè)可變形參 */ public class Test { public static void main(String[] args) { Test t = new Test(); // t.playGames(); // t.playGames("麥兜"); t.playGames("麥兜","貝塔","酥妮"); t.playGames(new String[]{"點(diǎn)點(diǎn)","阿苔"}); } //1.無(wú)參方法 public void playGames(){ System.out.println("playGames()"); } //2.有一個(gè)參數(shù)方法 public void playGames(String name){ System.out.println(name+"-->playGames(String name)"); } //3.可變形參方法 public void playGames(String ... name){ System.out.println("playGames(String ... name)"); for (int i = 0; i < name.length; i++) { System.out.println(name[i]+"--->加入游戲……"); } } /** * 4.--|在參數(shù)方法的形參中,可變個(gè)數(shù)形參必須聲明在末尾,并且最多只能聲明一個(gè)可變形參 * --|可變形參參數(shù)的類(lèi)型不要與前面類(lèi)型一致,比如下面的dogNum的類(lèi)型盡量不要用String, * --|①是意義不大,②是在調(diào)用時(shí)與上面第3方法沖突,不知道調(diào)的哪個(gè) */ public void playGames(int dogNum,String ... name){ System.out.println("playGames(String dogNum,String ... name)"); } // public void playGames(String[] name){ // // } }
到此這篇關(guān)于Java可變個(gè)數(shù)形參的文章就介紹到這了,更多相關(guān)Java可變個(gè)數(shù)形參內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Win10系統(tǒng)下配置Java環(huán)境變量
今天給大家?guī)?lái)的是關(guān)于Java的相關(guān)知識(shí),文章圍繞著Win10系統(tǒng)下配置Java環(huán)境變量展開(kāi),文中有非常詳細(xì)的介紹及圖文示例,需要的朋友可以參考下2021-06-06Java之String類(lèi)型的編碼方式轉(zhuǎn)換
這篇文章主要介紹了Java之String類(lèi)型的編碼方式轉(zhuǎn)換,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-02-02淺談Java的虛擬機(jī)結(jié)構(gòu)以及虛擬機(jī)內(nèi)存的優(yōu)化
這篇文章主要介紹了Java的虛擬機(jī)結(jié)構(gòu)以及虛擬機(jī)內(nèi)存的優(yōu)化,講到了JVM的堆和??臻g及GC垃圾回收等重要知識(shí),需要的朋友可以參考下2016-03-03詳解Java中LinkedStack鏈棧的實(shí)現(xiàn)
這篇文章主要為大家詳細(xì)介紹了Java中LinkedStack鏈棧的相關(guān)知識(shí),文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)Java有一定幫助,需要的可以參考一下2022-11-11Spring中@PropertySource和@Value注解詳解
這篇文章主要介紹了Spring中@PropertySource和@Value注解詳解,@PropertySource注解可以方便和靈活的向Spring的環(huán)境容器(org.springframework.core.env.Environment Environment)中注入一些屬性,這些屬性可以在Bean中使用,需要的朋友可以參考下2023-11-11JavaEE SpringMyBatis是什么? 它和Hibernate的區(qū)別及如何配置MyBatis
這篇文章主要介紹了JavaEE Spring MyBatis是什么? 它和Hibernate的區(qū)別有哪些?如何配置MyBatis?本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-08-08Springboot Druid 自定義加密數(shù)據(jù)庫(kù)密碼的幾種方案
這篇文章主要介紹了Springboot Druid 自定義加密數(shù)據(jù)庫(kù)密碼的步驟,幫助大家更好的理解和使用springboot,感興趣的朋友可以了解下2020-12-12在webservice里調(diào)用耗時(shí)方法出錯(cuò)的解決方案
這篇文章主要介紹了在webservice里調(diào)用耗時(shí)方法出錯(cuò)的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-07-07