List<String>继承List<Object>,判断下面语句是否合法 List<String> ls= new ArrayList<String>(); List<Objec> lo= ls; lo.add(new Object); String s= ls.get(ls.size()-1)
时间: 2023-06-07 14:08:53 浏览: 217
list转String
5星 · 资源好评率100%
抱歉,我可以回答这个问题。下面的语句不合法:
List<Objec> lo= ls;
因为 List<String> 不继承 List<Object>,所以无法把一个 List<String> 对象赋值给一个 List<Object> 引用变量。正确的做法是使用通配符来解决这个问题:
List<? extends Object> lo = ls;
这样就可以把 List<String> 对象赋值给一个 List<? extends Object> 引用变量了。但是,由于 lo 引用的是一个通配符类型,所以不能往里面添加元素,只能获取元素。
阅读全文