表示集合中 儲存的資料型別**實現:
泛型類:
/*
* 泛型類(泛型類 宣告時 尖括號中的字母 可以隨便定義)
* 泛型類的型別在 初始化這個類的物件的時候確定
*/public
class worker
public
void
setm(m m)
public
void
work()
public
void
sayhi(m m)
// 宣告不同泛型的泛型方法 在呼叫泛型方法 指定泛型的型別
//宣告泛型 只有宣告過 才能使用
public
void
print(z z)
// 靜態方法
// 當你呼叫靜態方法的時候 可能還沒有物件 沒有物件就沒指定泛型 所以不能用類的泛型
public
static
void
fun(w w)
}inte***ce intera
class interaimpl implements intera
}
//測試類
public
class
demo01
/*** 泛型別
*/public
static
void
fun3()
/*** 泛型的好處和一些問題處理
* */
public
static
void
fun2()
/**泛型的介紹
* 保持字串
* */
public
static
void
fun1() }}
在以前學習的一些方法中 我們經常在文件中可以看到這樣的說明
可以看到其中傳入引數中包含 」 < ? extends e> c 」 這個表示什麼呢?
? extends e(向下限定)有時候我們還能看到:? super e 它表示? 是子類 繼承 e 是父類
? 只能是e類的子類
? 是父類 e 是 子類 ? 只能是e類的 父類**示例:
public
class
demo02 ;
//fun2(array);
// 呼叫2 直接傳入數字
//fun2(1,2,3,4,5);
// 把陣列轉化為集合
int array = new
int ;
// 把陣列 當做集合中的乙個元素 轉為了集合
list aslist = arrays.aslist(array);
system.out.println(aslist);
integer array2 = ;// 自動裝箱
listaslist2 = arrays.aslist(array2);
system.out.println(aslist2);
string array3 = ;
listaslist3 = arrays.aslist(array3);
system.out.println(aslist3);
// 如果陣列轉集合 通過使用aslist 得到乙個集合 注意這個集合 不允許新增或刪除的操作
// 雖然不能新增刪除 但是可以呼叫集合其他方法
boolean contains = aslist3.contains("wanglong");
system.out.println(contains);
}
// int ... num 相當於傳入的引數是陣列
// int ... num 可以接收多個引數 只能是方法引數的最後乙個
public
static
void
fun2(int ... num)
}/**
* ? extends e(向下限定)
* */
public
static
void
fun1()
}
**實現:
public
class demo03
}/**
* 迭代器刪除
*/public
static
void fun2()
}system.out.println(list);
}/**
* 集合刪除
*/public
static
void fun1()
}system.out.println(list);}}
**實現:
public
class demo05
while (iterator3.hasnext())
}
// 通過學科找到班
// for (arraylistlist : subject)
// }}}
Java 泛型詳解
普通泛型 public class point public void setvar t var public string tostring public class notepad public v getvalue public void setkey k key public void se...
java泛型介面詳解
泛型介面 inte ce tool 這種方式適合實現介面的時候就知道類裡的泛型是什麼 class toolimpl implements tool override public void print e e 這種方式不好!class tool2impl implements tool overri...
Java泛型詳解(下)
假設現在有乙個類employee和它的子類manager 現在問題來了 pair是pair的子類嗎?答案是 不是 例如,下面的 將不會編譯成功 manager tophonchos pairresult arrayalg.minmax tophonchos error minmax方法返回pair,...