我一直只是一个人使用:
List<String> names = new ArrayList<>();
Run Code Online (Sandbox Code Playgroud)
我使用接口作为可移植性的类型名称,因此当我问这些问题时,我可以重新编写代码.
何时应该LinkedList使用,ArrayList反之亦然?
我使用了很多列表和数组,但我还没有遇到过这样一个场景,即如果不比链表更容易使用数组列表那么容易.我希望有人能给我一些关于链表明显更好的例子.
是的,这是一个古老的话题,但我仍有一些困惑.
在Java中,人们说:
如果我随机访问其元素,ArrayList比LinkedList更快.我认为随机访问意味着"给我第n个元素".为什么ArrayList更快?
LinkedList比ArrayList更快删除.我理解这个.由于需要重新分配内部备份阵列,因此ArrayList较慢.代码说明:
List<String> list = new ArrayList<String>();
list.add("a");
list.add("b");
list.add("c");
list.remove("b");
System.out.println(list.get(1)); //output "c"
Run Code Online (Sandbox Code Playgroud)LinkedList比ArrayList更快插入.插入意味着什么?如果它意味着将一些元素移回然后将元素放在中间空白点,则ArrayList应该比LinkedList慢.如果插入仅意味着添加(对象)操作,那么这怎么可能很慢?