您的位置:首页 > 其它

笔记1:关于List<?>和List

2015-10-18 11:30 309 查看
List<?>:

List<?> list;

表示list变量可以引用泛型为任何类型的List,但是list不能调用add()方法添加元素,但可以调用remove()方法删除元素,使用get()方法获取元素返回的Object对象,需要强制转换成对应的类型,如:

List<?> list;
List<String> strList = new ArrayList<String>();
strList.add("abc");
list = strList;//可以
list.add("aa");//不可以
list.add(new Object());//不可以
List<Date> dateList = new ArrayList<Date>();
dateList.add(new Date());
list = dateList;//可以
list.remove(0);//可以
Object o = list.get(0);//可以
Date d = (Date)list.get(0);//可以
List<Date> dList = (List<Date>)list;//可以强制转换

List:

不加泛型的List可以存放任意类型的元素,且各个元素的类型可以不同,可以调用add()方法添加任何类型的元素,使用get()方法获取元素返回的Object对象

List list2;
list2 = strList;//可以
list2.add("aaa");//可以
list2.add(new Date());//可以
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: