数组
- 长度固定:不能添加多余元素
集合框架
- 接口(规范部分)
- collection:接口存储一组不唯一,无序的对象(不唯一,无序)
- List:接口存储一组不唯一,有序(插入顺序)的对象
- set:接口存储一组唯一,无序的对象
- Map:接口存储一组键值对象,提供key(键)到value(值)的映像
- collection:接口存储一组不唯一,无序的对象(不唯一,无序)
- 类(具体):
- List
ArrayList:实现了长度可变的数组,在内存里分配连续的空间。遍历元素和随机访问元素的效率比较高。实例:List students = new ArrayList();
students.add(new Student(“jredu001”, “zhang3”, 20));
students.add(new Student(“jredu002”, “li4”, 25));for(int i=0;i<students.size();i++){ Student s = students.get(i); System.out.println(s.getNo()); }
LinkList:采用链表存储方式。插入,删除元素时效率比较高。列子:/************************/
System.out.println(“****LinkedList*********”);
LinkedList lnk = new LinkedList();
//1、添加一个集合的数据进来
lnk.addAll(students);
for(Student s : lnk){
System.out.println(s.getName());
}
System.out.println(“********************”);
//2、在头部添加一个学生
lnk.addFirst(new Student(“jredu003”, “wang5”, 24));for(Student s : lnk){ System.out.println(s.getName()); }
使用方法:
方法名 | 说明 |
---|---|
void addFirst(object o) | 在列表的首部添加元素 |
void addLast(object o) | 在列表的末尾添加元素 |
Object getFirst() | 返回列表中的第一个元素 |
Object getLirst() | 返回列表中的最后一个元素 |
Object removeFirst() | 删除并返回列表中的第一个元素 |
、Object removeLarst() | 删除并返回列表中的最后一个数据 |
- set
1. HasSet
2. TreeSet
- Map
3. 算法:collection提供了对集合进行排序,遍历等多种算法实现
4. 如何遍历
- 方法1:通过for循环和get方法配合实现遍历
- 方法2:通过迭代器Iterator实现遍历