/**
*演示ArrayList和LinkedList
*/
import java.util.ArrayList;
import java.util.LinkedList;
public class TestArrayLinked {
public static void main(String[] args) {
//ArrayList底层是数组,有明确的下标
//数组:查找快,增删慢
ArrayList<String> al = new ArrayList<String>();
al.add("hello");
long start = System.currentTimeMillis();
for (int i = 0; i < 100000; i++) {
al.add(0,"hello");
}
long end = System.currentTimeMillis();
System.out.println("ArrayList:"+(end-start));
//LinkedList底层是双向链表,没有明确的下标,只能通过挨个循环找下标
//链表:查找慢,增删快
LinkedList<String> ll = new LinkedList<String>();
ll.add("hello");
start = System.currentTimeMillis();
for (int i = 0; i < 100000; i++) {
ll.add(0,"hello");
}
end = System.currentTimeMillis();
System.out.println("LinkedList:"+(end-start));
}
}
*演示ArrayList和LinkedList
*/
import java.util.ArrayList;
import java.util.LinkedList;
public class TestArrayLinked {
public static void main(String[] args) {
//ArrayList底层是数组,有明确的下标
//数组:查找快,增删慢
ArrayList<String> al = new ArrayList<String>();
al.add("hello");
long start = System.currentTimeMillis();
for (int i = 0; i < 100000; i++) {
al.add(0,"hello");
}
long end = System.currentTimeMillis();
System.out.println("ArrayList:"+(end-start));
//LinkedList底层是双向链表,没有明确的下标,只能通过挨个循环找下标
//链表:查找慢,增删快
LinkedList<String> ll = new LinkedList<String>();
ll.add("hello");
start = System.currentTimeMillis();
for (int i = 0; i < 100000; i++) {
ll.add(0,"hello");
}
end = System.currentTimeMillis();
System.out.println("LinkedList:"+(end-start));
}
}