java泛型定義可變參數(shù)
/**
* 用泛型定義可變參數(shù)
*/
public class Test6<T> {
? ?public void printFlags(T...args){
? ? ? ?//通過泛型類的T定義可變參數(shù)
? ? ? ?for (T a:args){
? ? ? ? ? ?System.out.print(a+" ");
? ? ? ?}
? ? ? ?System.out.println();
? ?}
? ?public <T> void printNames(T...args){
? ? ? ?//通過泛型方法定義可變參數(shù)
? ? ? ?for (int i=0;i<args.length;i++){
? ? ? ? ? ?System.out.print(args[i]+"\t");
? ? ? ?}
? ? ? ?System.out.println();
? ?}
? ?public static <T> void printNumbers(T...args){
? ? ? ?//通過靜態(tài)方法定義
? ? ? ?for (T a :
? ? ? ? ? ? ? ?args) {
? ? ? ? ? ?System.out.println(a);
? ? ? ?}
? ?}
? ?public static void main(String[] args) {
? ? ? ?Test6<Integer> i6 = new Test6<>();
? ? ? ?i6.printFlags(1,2,3,4,5,6);
? ? ? ?i6.printNames("a","b","c");
? ? ? ?Double[] d = {1.0,2.0,3.0,4.0};
? ? ? ?//也可以創(chuàng)建數(shù)組傳入形參列表
? ? ? ?Test6.printNumbers(d);
? ? ? ?//泛型對(duì)應(yīng)類 如果是基本數(shù)據(jù)類型double[]的話結(jié)果為 [D@1b6d3586
? ?}
}