java可變參數(shù)(不定向參數(shù))的作用與實(shí)例
java可變參數(shù)的作用:
在編寫(xiě)方法的過(guò)程中,可能會(huì)遇見(jiàn)一個(gè)方法有不確定參數(shù)個(gè)數(shù)的情況。一般我們會(huì)用方法重載來(lái)解決問(wèn)題:
1 //方法重載,解決參數(shù)個(gè)數(shù)不確定問(wèn)題 2 public void method(); 3 public void method(int i); 4 public void method(int i, int j); 5 public void method(int i, int j, int k);
但是,當(dāng)參數(shù)個(gè)數(shù)過(guò)多,這樣太過(guò)于繁瑣,于是我們可以使用不定項(xiàng)參數(shù)(可變參數(shù))的方式:
public void test(int...args);
其實(shí)這就類(lèi)似于數(shù)組,只是不同的表現(xiàn)形式。
/*JDK1.5開(kāi)始,java支持傳遞同類(lèi)型的可變參數(shù)給一個(gè)方法。
*
*在方法聲明中,在指定參數(shù)類(lèi)型后加一個(gè)省略號(hào)(…)


*一個(gè)方法中只能指定一個(gè)可變參數(shù),它必須是方法的最后一個(gè)參數(shù)。任何普通的參數(shù)必須在它之前聲明。


事例
1
public class Demo04 {
public static void main(String[] args) {
Demo04 demo04 = new Demo04();
demo04.test(1,2,3,4,5,6);//調(diào)用創(chuàng)建的方法
}
public void test(int... i){//多個(gè)i的話(huà),避免繁瑣,可以寫(xiě)成int...i,即變成多個(gè)i
System.out.println(i[0]);
System.out.println(i[1]);
System.out.println(i[2]);
System.out.println(i[3]);
System.out.println(i[4]);
}
}

2
package javamethod;
//----------可變參數(shù)的事例
public class Demo05 {
public static void main(String[] args) {
//調(diào)用可變參數(shù)的方法
printMax(0.);
}
//定義一個(gè)輸出最大值的方法
public static void printMax(double... numbers){
if (numbers.length==0){
System.out.println("別搞啊 ,你倒是輸個(gè)數(shù)啊哥。");
return;
}
double result=numbers[0];
//排序
for (int i=1;i<numbers.length;i++){
if (numbers[i]>result){
result=numbers[i];
}
}
System.out.println("寶貝,最大的數(shù)是"+result);
}
}




總結(jié)
到此這篇關(guān)于java可變參數(shù)(不定向參數(shù))的作用與實(shí)例的文章就介紹到這了,更多相關(guān)java可變參數(shù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java數(shù)據(jù)結(jié)構(gòu)(線(xiàn)性表)詳解
本文主要介紹了Java數(shù)據(jù)結(jié)構(gòu)(線(xiàn)性表)的相關(guān)知識(shí)。具有很好的參考價(jià)值,下面跟著小編一起來(lái)看下吧2017-01-01
利用Intellij Idea連接遠(yuǎn)程服務(wù)器實(shí)現(xiàn)遠(yuǎn)程上傳部署功能
大家在使用Intellij Idea開(kāi)發(fā)程序的時(shí)候,是不是需要部署到遠(yuǎn)程SSH服務(wù)器運(yùn)行呢,當(dāng)然也可以直接在idea軟件內(nèi)容實(shí)現(xiàn)配置部署操作,接下來(lái)通過(guò)本文給大家分享利用Intellij Idea連接遠(yuǎn)程服務(wù)器實(shí)現(xiàn)遠(yuǎn)程上傳部署功能,感興趣的朋友跟隨小編一起看看吧2021-05-05
springboot+rabbitmq實(shí)現(xiàn)指定消費(fèi)者才能消費(fèi)的方法
當(dāng)項(xiàng)目部署到測(cè)試環(huán)境后,QA測(cè)試過(guò)程中,總是“莫名其妙”的發(fā)現(xiàn)所保存的用戶(hù)付款單數(shù)據(jù)有問(wèn)題。這篇文章主要介紹了springboot+rabbitmq實(shí)現(xiàn)指定消費(fèi)者才能消費(fèi),需要的朋友可以參考下2021-11-11
maven assembly打包生成Java應(yīng)用啟動(dòng)腳本bat和sh的方法
springboot應(yīng)用通過(guò)maven插件appassembler-maven-plugi生成啟動(dòng)腳本bat和sh,這篇文章主要介紹了maven assembly打包生成Java應(yīng)用啟動(dòng)腳本bat和sh,需要的朋友可以參考下2022-11-11
SpringBoot用@Async注解實(shí)現(xiàn)異步任務(wù)
這篇文章主要介紹了SpringBoot用@Async注解實(shí)現(xiàn)異步任務(wù),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-12-12
在Java的Struts中判斷是否調(diào)用AJAX及用攔截器對(duì)其優(yōu)化
這篇文章主要介紹了在Java的Struts中判斷是否調(diào)用AJAX及用攔截器對(duì)其優(yōu)化的方法,Struts框架是Java的SSH三大web開(kāi)發(fā)框架之一,需要的朋友可以參考下2016-01-01

