如何正确使用List<?>
来源:互联网 发布:嵌入式与人工智能关系 编辑:程序博客网 时间:2024/06/12 22:45
List<?>这种语法很奇怪,是什么意思?
Java中把一个(?)称为类型通配符。为了表示各种泛型List的父类,可以使用List<?>,意思是元素类型未知的List,它的元素类型可以匹配任何类型。先看看下面这段代码:
public void test(List<?> c){ for(int i=0;i<c.size();i++) { System.out.println(c.get(i)); }}
现在可以使用任何类型的List来调用它,程序依然可以访问集合c中元素。
但这种带通配符的List仅表示它是各种泛型List的父类,并不能把元素加入其中,例如,下面的代码会引起编译错误。
List<?> c = new ArrayList<String>();//下面程序引起编译错误c.add(new Object());因为程序无法确定c集合元素的类型,所以不能向其中添加对象。
上面两个小例子说明了List<?>的正确使用和错误使用两种情况。简单一句话:可以使用get访问元素,但不能使用add添加元素。
0 0
- 如何正确使用List<?>
- 【泛型】使用List<T>篇
- List<T>排序
- <fmt:formatNumber> 使用
- json转换成list<T>
- C# List<>简单用法
- <html:select>,<html:option>,<html:options>,<html:optionsCollection>标签使用
- List<Interger>是List<Number>的子类吗?
- list<object> 与List<Sting[]>打回前台
- ><
- jQuery中gt和lt的使用
- <jsp:useBean>的使用
- <html:select>的使用
- android 使用<merge>标签
- 使用css制作三角,兼容IE6,用到的标签<div><s><span>
- List<T>的搜索和排序
- 泛型List<T>与非泛型ArrayList
- C#中DataTable转化为List<T>解析
- 6个用于大数据分析的最好工具
- 需要学习的内容--长期出入库
- 泛型的引入
- 泛型的深入研究
- List<Interger>是List<Number>的子类吗?
- 如何正确使用List<?>
- 循序渐进理解泛型的通配符
- 泛型方法的使用
- 【PHP7内核剖析】3.4 面向对象-对象的实现
- Lambda表达式的引入
- Android系统服务-WindowManager
- Google Analytics站内搜索分析思路与方法(基础篇)
- 异常机制概述
- Java多线程状态转换图