🍅 Java学习路线:搬砖工逆袭Java架构师
🍅 简介:Java领域优质创作者🏆、优快云哪吒公众号作者✌ 、Java架构师奋斗者💪
🍅 扫描主页左侧二维码,加入群聊,一起学习、一起进步
🍅 欢迎点赞 👍 收藏 ⭐留言 📝
一、简介
<T>在List、Set、Map中经常见到,用来限制Class中的参数类型,确保Class中参数的一致性。例如:List<String> list = new ArrayList<>();创建了一个内部参数是String类型的类,list中的操作对象都是String。<?>代表任意java类型,只有在不关心数据的具体类型下才使用通配符表示,但在一些情况下,需要将<?>传入的数据进行强转,但这样不如直接传入<T>。
另外除了<?>,还有<? extends T>上界通配符和<? super T>下界通配符。<? extends T> 表示传入数据值需要是T类型或T的子类,<? suprt T>表示传入数据值需要是T类型或T的超类。
一般来说,<?>主要用于变量上,<T>主要用于类或方法上。下图中,list的元素类型为?,但往里边添加Stri
本文介绍了Java中List<T>和List<?>的区别。List<T>用于限定列表元素类型,保证数据一致性;而List<?>是只读列表,不能执行增加或修改操作。建议使用顺序为List<T>、List<?>、List<Object>。文章通过代码实例展示了List<?>不可进行写操作的特性。
订阅专栏 解锁全文
347





