标题: List ArrayList问题 [打印本页] 作者: 张卫刚 时间: 2013-3-15 17:34 标题: List ArrayList问题 本帖最后由 张卫刚 于 2013-3-16 00:33 编辑
List<String> list = new ArrayList<String>();
ArrayList<String> list = new ArrayList<String>();
这两个有什么区别,怎么择选,什么情况用第一个,什么情况用第二个,它们存在什么不一样呢?作者: 姓名长度不符 时间: 2013-3-15 17:51 本帖最后由 姓名长度不符 于 2013-3-15 18:28 编辑
List<String> list = new ArrayList<String>();ArrayList实现了list接口,故以后如果想换容器的话,可以直接换
ArrayList<String> list = new ArrayList<String>();下面的代码里面可能会含有ArrayList的方法
但是如果List<String> list = new LinkedList<String>();list无法访问linklist的方法,所以容器可以根据以后的需求随意更换,为程序提供了很大的灵活性作者: 罗海云 时间: 2013-3-15 18:21 本帖最后由 罗海云 于 2013-3-15 18:23 编辑
这是多态的表现,目的: 提高了对象的重用性,比如:
List i = new ArrayList(); |
i = new LinkedList(); | 这样就不会报错。
ArrayList l = new ArrayList();
l = new LinkedList();而下面这就会报错。
所以。假如你的对象需要重用就用多态形式。如果不需要就用下面那种作者: 范天成 时间: 2013-3-15 18:25
List<String> list = new ArrayList<String>();
ArrayList<String> list = new ArrayList<String>();
这两个有什么区别,怎么择选,什么情况用第一个,什么情况用第二个,它们存在什么不一样呢?