Java可變個(gè)數(shù)形參的方法實(shí)例代碼
前言
小小知識(shí),不值一提,了解了也不能讓你提高身價(jià),但是不了解你就是比別人少知道點(diǎn)!事兒就是這么個(gè)事兒,直接正題吧! 直接看代碼

演示
優(yōu)先級
當(dāng)方法1無參和方法2有參存在時(shí),執(zhí)行上面的main方法調(diào)用并觀看結(jié)果:

當(dāng)只有可變參數(shù)方法存在時(shí),再重新執(zhí)行看看

多個(gè)參數(shù)傳參情況
一是多個(gè)參數(shù)逗號隔開傳參
二是直接可以傳數(shù)組

總結(jié)
①調(diào)用的時(shí)候參數(shù)可不傳或傳多個(gè)
②如果有無參或者有可數(shù)個(gè)參數(shù)的重載方法存在時(shí),調(diào)用同名方法時(shí),可變參數(shù)方法的優(yōu)先級靠后,沒有其他重載方法,則自動(dòng)調(diào)用可變參數(shù)方法
③與形參類型相同的數(shù)組直接不能構(gòu)成重載,可以認(rèn)為,可變參數(shù)代替了數(shù)組參數(shù)
④在參數(shù)方法的形參中,可變個(gè)數(shù)形參必須聲明在末尾,并且最多只能聲明一個(gè)可變形參
另外:

簡單測試代碼
package com.liu.susu.other;
/**
* 可變形參方法
* 注意:①調(diào)用的時(shí)候參數(shù)可不傳或傳多個(gè)
* ②如果有無參或者有可數(shù)個(gè)參數(shù)的重載方法存在時(shí),調(diào)用同名方法時(shí),可變參數(shù)方法的優(yōu)先級靠后,
* 沒有其他重載方法,則自動(dòng)調(diào)用可變參數(shù)方法
* ③與形參類型相同的數(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.無參方法
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ù)的類型不要與前面類型一致,比如下面的dogNum的類型盡量不要用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)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
使用Java8實(shí)現(xiàn)觀察者模式的方法(上)
本文給大家介紹使用java8實(shí)現(xiàn)觀察者模式的方法,涉及到j(luò)ava8觀察者模式相關(guān)知識(shí),對此感興趣的朋友一起學(xué)習(xí)吧2016-02-02
java實(shí)現(xiàn)收藏名言語句臺(tái)詞的app
本文給大家分享的是使用java制作的記錄名人名言臺(tái)詞等等讓你難忘的語句的APP的代碼,非常的實(shí)用,有需要的小伙伴可以參考下。2015-04-04
Apache?SkyWalking?監(jiān)控?MySQL?Server?實(shí)戰(zhàn)解析
這篇文章主要介紹了Apache?SkyWalking?監(jiān)控?MySQL?Server?實(shí)戰(zhàn)解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-09-09
Java函數(shù)式編程之通過行為參數(shù)化傳遞代碼
行為參數(shù)化就是可以幫助你處理頻繁變更的需求的一種軟件開發(fā)模式,這篇文章將給大家詳細(xì)的介紹一下Java函數(shù)式編程之行為參數(shù)化傳遞代碼,感興趣的同學(xué)可以參考閱讀下2023-08-08
Java Socket編程實(shí)例(二)- UDP基本使用
這篇文章主要講解Java Socket編程中UDP的基本使用,希望能給大家做一個(gè)參考。2016-06-06
SpringBoot Entity中枚舉類型詳細(xì)使用介紹
本文介紹SpringBoot如何在Entity(DAO)中使用枚舉類型。(本文使用MyBatis-Plus)。在實(shí)際開發(fā)中,經(jīng)常會(huì)遇到表示類型或者狀態(tài)的情況,比如:有三種支付方式:微信、支付寶、銀聯(lián)。本文介紹如何這種場景的方案對比,并用實(shí)例來介紹如何用枚舉這種最優(yōu)雅的來表示2022-10-10
java.mail實(shí)現(xiàn)發(fā)送郵件
這篇文章主要為大家詳細(xì)介紹了java.mail實(shí)現(xiàn)發(fā)送郵件,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-02-02
深入學(xué)習(xí)springboot線程池的使用和擴(kuò)展
這篇文章主要介紹了深入學(xué)習(xí)springboot線程池的使用和擴(kuò)展,springboot框架提供了@Async注解,幫助我們更方便的將業(yè)務(wù)邏輯提交到線程池中異步執(zhí)行,需要的朋友可以參考下2019-06-06

