java dog类型_java泛型中?和T有什么区别?

public static void printColl(ArrayList> al){

Iterator> it = al.iterator();

while(it.hasNext())

{

System.out.println(it.next().toString());

}

?和T都表示不确定的类型  但如果是T的话 函数里面可以对T进行操作 比如while里面可以这样写

T t = it.next();

System.out.println(t);

T自定义泛型和?通配符泛型

1.在整个类中只有一处使用了泛型,使用时注意加了泛型了参数不能调用与参数类型有关的方法比如“+”,比如打印出任意参数化类型集合中的所有内容,就适合用通配符泛型>

public static void printCollecton(Collection > collection)

{

for(Object obj: collection)

{

System.out.println(obj);

}

}

2. 当一个类型变脸用来表达两个参数之间或者参数与返回值之间的关系时,即统一各类型变量在方法签名的两处被使用,或者类型变量在方法体代码中也被使用而不仅 仅在签名的时候使用,这是应该用自定义泛型。泛型方可以调用一些时间类型的方法。比如集合的add方法。

public static T autoConvertType(T obj)

{

return(T)obj;

}


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部