在之前我们讲过一点点的数据结构,那我们现在就来比较详细的讲解数据结构。
数据结构可以分为:栈、队列、数组、链表、树、哈希表;
那我们可以从图下知道前四个:
栈与队列:
数组和链表:
List的子类特点:
ArrayList:
底层数据结构是数组,查询快,增删慢
线程不安全,效率高
Vector:
底层数据结构是数组,查询快,增删慢
线程安全,效率低
LinkedList:
底层数据结构是链表,查询慢,增删快
线程不安全,效率高
其实讲数据结构是为了更好的理解List的子类特点,
以便我们往后的学习和如何选择List的方法。
案例:
使用List的任何子类存储字符串或者存储自定义对象并遍历。
ArrayList的使用。
存储字符串并遍历
import java.util.ArrayList;
import java.util.Iterator;
public class ArrayListDemo {
public static void main(String[] args) {
// 创建集合对象
ArrayList array = new ArrayList();
// 创建元素对象,并添加元素
array.add("hello");
array.add("world");
array.add("java");
// 遍历
Iterator it = array.iterator();
while (it.hasNext()) {
String s = (String) it.next();
System.out.println(s);
}
System.out.println("-----------");
for (int x = 0; x < array.size(); x++) {
String s = (String) array.get(x);
System.out.println(s);
}
}
}