堆結構-高效維護資料集中最大最小值問題
阿新 • • 發佈:2022-04-13
·基本概念
這裡就可以通過可變引數實現
基本語法
訪問修飾符 返回型別 方法名(資料型別 … 形參名){ }
快速入門案例 VarParametert01.java
看一個案例類HspMethod, 方法sum
public class VarParametert01 {
public static void main(String[] args) {
HspMethod m1 = new HspMethod();
m1.sum(2,3,4);
}
}
class HspMethod{
//可以計算1-5個數的和
//可以使用方法過載,但是比較麻煩
// public int sum(int n1, int n2){
// return n1 + n2;
// }
// public int sum(int n1, int n2 ,int n3){
// return n1 + n2 + n3;
// }
// public int sum(int n1, int n2 ,int n3 ,int n4){
// return n1 + n2 + n3 + n4;
// }
//可以看到三個方法名稱一致,引數個數不同--因此可以使用可變引數
//1.int...表示可變引數,可以接收多個int(0到多)
//2.使用可變引數的時候可以當作陣列來使用,即nums可當作陣列
public int sum (int... nums){
System.out.println("接收到的引數個數"+nums.length);
int sum = 0;
for (int i = 0; i<nums.length;i++){
sum += nums[i];
}
System.out.println(sum);
return sum;
}
}
·注意事項和使用細節
VarParameterDetail.java
1)可變引數的實參可以為0個或任意多個。
2)可變引數的實參可以為陣列。
3)可變引數的本質就是陣列
4)可變引數可以和普通型別的引數一起放在形參列表,但必須保證可變引數在最後
5)一個形參列表中只能出現一個可變引數
·練習
VarParameterExercise.java
有三個方法,分別實現返回姓名和兩門課成績(總分),返回姓名和三門課成績(總分),返回姓名和五門課成績(總分)。
封裝成一個可變引數的方法