java變長參數

  當參數個數不確定時,開發者很想使用變長參數,讓調用者以更靈活的方式調用。此種方法和方法重載有同樣的效果,但是個人感覺比方法重載用着簡潔。一直知道Java支持變長參數函數,然而項目中一直沒有用到,前幾天在項目中看到前輩大量使用變長參數,感覺有很好的效果。特別是API設計中能夠解決很多不確定因素。下面是一個簡單的變長參數示例
變長參數使用的形式是Type...argsName,即 類型+省略號+參數名
Java代碼如下。

package varargsdemo;

/**
*
* @author hitdong
* @version 1.0
* @since 2010.1.1
*/
public class Main {

/**
* @param args the command line arguments
*/
public static void main(String[] args) {
/*
* 不傳遞參數
*/
printArgs();
System.out.println("--------------------------");
String arg1="This is the first args";
String arg2="This is the second args";
/*
* 並列地傳給多個參數
*/
printArgs(arg1,arg2);
System.out.println("--------------------------");


String[] argsArray = new String[]{
arg1,
arg2};
/*
* 以數組方式傳遞多個參數
*/
printArgs(argsArray);
System.out.println("--------------------------");
}

/*
*些函數接受類型爲String的個數可變的參數,形參varargs是個數組
*/
public static void printArgs(String...varargs){
int argsLength = varargs.length;
if(argsLength == 0){
System.out.println("Give no args");
}else{
System.out.println("the args number is:"+varargs.length);
}
for (int i = 0; i < argsLength; i++) {
System.out.println("args "+i+" is "+varargs[i]);
}
}
}

運行結果如下:

Give no args
--------------------------
the args number is:2
args 0 is This is the first args
args 1 is This is the second args
--------------------------
the args number is:2
args 0 is This is the first args
args 1 is This is the second args
--------------------------

 

本文來自hi.baidu.com/yingnet,版權所有,轉載請註明出處,謝謝合作

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章