一:
我们常用对集合的操作,查询、增删等操作。
由于集合的存储的方式的不同,导致有些集合查询快但是增删慢。有些集合增删快、但是查询慢。
ArrayList:由于ArrayList存储的方式为数组形式。有索引,导致查询速度很快,但是增删的时候,需要创建新的数组,对原先数组进行复制操作导致速度慢。
所以在查询的时候,我们可以使用ArrayList,而LinkedList是链表,由于每个元素存储下个元素的地址和上个元素地址,所以在增加和删除的时候,只是变更数组的地址就可以,增删比较快,但是查询较慢。
所以:
ArrayList:适合查询
LinkedList:适合增删,提供了首尾的插入和删除。
我们看下这2个集合的方法:
1 package test10; 2 3 import java.util.LinkedList; 4 5 public class Link_Test { 6 public static void main(String...args){ 7 link_Me(); 8 } 9 public static void link_Me(){ 10 LinkedList<String> link_list=new LinkedList<>(); 11 link_list.addFirst("ti");//首添加元素 12 link_list.addFirst("ti"); 13 link_list.addFirst("ti"); 14 link_list.addFirst("ti"); 15 link_list.push("22"); 16 System.out.print(link_list); 17 link_list.pop();//末尾删除。 18 System.out.print(link_list); 19 if(!link_list.isEmpty()){System.out.print(22);} 20 link_list.removeFirst();// 首尾删除。 21 link_list.removeLast(); 22 System.out.print(link_list); 23 } 24 }
其余的方法是List和Collection的接口方法。