從零開始學JAVA之可變參數(shù)
下面是一個簡單的小程序:
import java.util.Arrays;
class lesson6
{
public static void main(String[] args)
{
int array[]={2,3,1,5,4,6};
System.out.println(Arrays.toString(array));
System.out.println(getSum(array));
//System.out.println(getSum(2,3,1,5,4,6));
}
static int getSum(int array[])//計算元素之和
{
int sum=0;
for(int i=0;i<array.length;i++)
sum+=array[i];
return sum;
}
}
其中g(shù)etSum(int array[])方法的聲明就限定了它只能接受一維int類型的數(shù)組。如果我們現(xiàn)在試圖運行第十行(被注釋的那行),這樣肯定會出錯。這種方法的聲明方式特別在不知道要傳入?yún)?shù)個數(shù)時候,缺點比較明顯。
從Java5開始,出現(xiàn)了可變參數(shù)。特征為:參數(shù)個數(shù)可變,可以傳遞0到N個;必須為方法最后一個參數(shù);調(diào)用可變參數(shù)的方法時,編譯器為該可變參數(shù)隱含創(chuàng)建一個數(shù)組,在方法體中一數(shù)組的形式訪問可變參數(shù)。
我們將上面代碼的注釋取消,并將getSum(int array[])改為getSum(int ... array)來實現(xiàn)我們想要的結(jié)果。獲得結(jié)果如下:

由下方的兩次輸出21可得,getSum(int ... array)成功的接受了2種不同的數(shù)據(jù)個數(shù)的傳入。
另外在實際編程中需要特別注意的一點,可變參數(shù)必須為方法最后一個參數(shù)。大家可以對上面代碼進行簡單改動進行試驗。
相關(guān)文章
vue3使用vue-diff工具來比較數(shù)據(jù)差異
這篇文章主要為大家詳細介紹了vue3如何使用vue-diff工具來比較數(shù)據(jù)差異,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學習一下2024-11-11
JAVA PDF操作之實現(xiàn)截取N頁和多個PDF合并
這篇文章主要為大家詳細介紹了java關(guān)于PDF的一些操作,例如截取N頁并生成新文件,轉(zhuǎn)圖片以及多個PDF合并,文中的示例代碼講解詳細,感興趣的可以了解下2025-01-01
Spring+Vue整合UEditor富文本實現(xiàn)圖片附件上傳的方法
這篇文章主要介紹了Spring+Vue整合UEditor富文本實現(xiàn)圖片附件上傳的方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-07-07
Spring?createBeanInstance實例化Bean
這篇文章主要為大家介紹了Spring?createBeanInstance實例化Bean源碼解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-03-03
Spring?Cloud集成Nacos?Config動態(tài)刷新源碼剖析
這篇文章主要為大家介紹了Spring?Cloud集成Nacos?Config動態(tài)刷新源碼剖析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-08-08
SpringBoot實現(xiàn)接口文檔自動生成的方法示例
在開發(fā)Web應用程序時,接口文檔是非常重要的一環(huán),本文主要介紹了SpringBoot實現(xiàn)接口文檔自動生成的方法示例,具有一定的參考價值,感興趣的可以了解一下2023-10-10
Java字節(jié)與字符流永久存儲json數(shù)據(jù)
本篇文章給大家詳細講述了Java字節(jié)與字符流永久存儲json數(shù)據(jù)的方法,以及代碼分享,有興趣的參考學習下。2018-02-02

