java泛型學習3之類型參數的限製
例一
private static <T> T returnT(T i)
{
return i;
}
returnT("abc");
returnT(1);
以上兩個方法均正確。
例二
private static <T> void swap(T[] t, int i, int j)
{
T tmp = t[i];
t[i] = t[j];
t[j] = tmp;
}
swap(new String[ ] { "a", "b", "c" }, 0, 1);
swap(new int[]{0,1,2},0,1);
swap(new int[]{0,1,2},0,1)是錯誤的,T必須是應用類型而不能是基本類型,當然直接傳基本類型的值會自動裝箱。
最後更新:2017-04-03 20:19:47