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必须是应用类型而不能是基本类型,当然直接传基本类型的值会自动装箱。

 

上一篇:Android Studio第三十三期 - 蓝牙开发初识~


下一篇:SQLERVER优化常用脚本.txt