Java使用可變參數與方法重載
如何使用方法重載處理使用可變參數作為輸入?
解決方法
本示例顯示如何重載具有可變參數作為輸入的方法。
public class Main { static void vaTest(int ... no) { System.out.print("vaTest(int ...): " + "Number of args: " + no.length +" Contents: "); for(int n : no) System.out.print(n + " "); System.out.println(); } static void vaTest(boolean ... bl) { System.out.print("vaTest(boolean ...) " + "Number of args: " + bl.length + " Contents: "); for(boolean b : bl) System.out.print(b + " "); System.out.println(); } static void vaTest(String msg, int ... no) { System.out.print("vaTest(String, int ...): " + msg +"no. of arguments: "+ no.length +" Contents: "); for(int n : no) System.out.print(n + " "); System.out.println(); } public static void main(String args[]){ vaTest(1, 2, 3); vaTest("Testing: ", 10, 20); vaTest(true, false, false); } }
結果
上麵的代碼示例將產生以下結果。
vaTest(int ...): Number of args: 3 Contents: 1 2 3 vaTest(String, int ...): Testing: no. of arguments: 2 Contents: 10 20 vaTest(boolean ...) Number of args: 3 Contents: true false false