从上面的写法来看,这只不过是一个书写的习惯而已,两者的结果是相等的。 但是从一些其他的角度来看,使用List做引用,有很多好处。 如果你知道依赖倒置原则,这个问题自然就不是问题了。 如果你不知道,举几个例子: List<Integer> list; for(int i = 0;i<100;i++){ if(i%2==0){ if(list == null){ list = new ArrayList(); } list.add(i); } else { if(list == null) { list = new LinkedList(); } list.add(i); } } 就是说,有些时候,可能需要的不仅仅是ArrayList,需要根据某些类型来判定究竟需要哪种类型。所以,使用List就可以随便指定要创建什么类型的对象了。 另一个例子: public void fun(List<Integer> list) { list.get(0); } 相对这个例子而言,它可以动态的指定调用方要传入什么样的类型。如果你当前的版本需要ArrayList,则需要传入ArrayList,假如在后期发现,LinkedList更合适,你只需要改调用方就可以了,而不需要再来改这儿的代码。所以,它比直接使用ArrayList更方便。 嗯。。大概就这样吧。你上面的那种写法,只是习惯问题,没有哪种好与不好。
62,628
社区成员
307,259
社区内容
加载中
试试用AI创作助手写篇文章吧