java新特性—foreach,可變引數
阿新 • • 發佈:2019-01-01
foreach
1.``在固定長度或長度不需要計算的時候for迴圈效率高於foreach。
2.``在不確定長度,或計算長度有效能損耗的時候,用foreach比較方便。
3.``並且foreach的時候會鎖定集合中的物件.期間不能修改。
可變引數
1、可變引數:
適用於引數個數不確定,型別確定的情況,java把可變引數當做陣列處理。
注意:
可變引數必須位於最後一項。
當可變引數個數多餘一個時,必將有一個不是最後一項,所以只支援有一個可變引數。
因為引數個數不定,所以當其後邊還有相同型別引數時,java無法區分傳入的引數屬於前一個可變引數還是後邊的引數,所以只能讓可變引數位於最後一項。
2、可變引數的特點:
(1) 只能出現在引數列表的最後;
(2) 位於變數型別和變數名之間,前後有無空格都可以;
(3)
呼叫可變引數的方法時,編譯器為該可變引數隱含建立一個數組,在方法體中一陣列的形式訪問可變引數。
public class Test {
public static void main(String [] args){
System.out.println(add(2,3));
System.out.println(add(2,3,5));
}
public static int add(int x,int ...args){
int sum=x;
for(int i=0;i<args.length;i++){
sum+=args[i];
}
return sum;
}
}
輸出的結果是:
//5
//10