(1)集合框架的由来:
为了对多个对象进行操作(存储和取出),java提供了集合框架中的类供我们使用。
(2)数组和集合框架的区别?
A:集合(特点):只能存储对象,长度可变。
B:数组:可以存储基本数据类型,也可以存储对象。 长度固定。
(3)集合框架的体系结构
A:由于没种集合容器的数据结构不同,所以,就会对应很多种容器。
这些容器都存在着共性的内容,不断的向上抽取,就形成了集合的体系结构。
数据结构:就是存储数据的方式。
B:体系如下
Collection
|--List
|--ArrayList
|--Vector
|--LinkedList
|--Set
|--HashSet
|--TreeSet
C:体系的学习和使用方法
学习顶层,顶层定义的是这个体系的共性功能。
使用底层,一般底层是具体的实现类。底层具有最多的功能。
(4)Collection中的常见功能
A:添加元素
boolean add(Object obj)
boolean addAll(Collection c)
B:删除元素
boolean remove(Object obj)
boolean removeAll(Collection c)
void clear()
C:判断功能
boolean contains(Object obj)
boolean containsAll(Collection c)
boolean isEmpty()
D:长度
int size()
E:把集合变成数组
Object[] toArray()
F:交集
boolean retainAll(Collection c)
集合A和B做交集,A中存储的是交集后的元素,B不变。
返回类型指的是A集合是否发生改变。
G:迭代器
Iterator iterator()
(5)Iterator的功能(掌握)
A:判断是否有元素
boolean hasNext()
B:获取元素,并自动获取下一个元素位置
Object next()
C:代码体现
**创建集合对象
**创建元素对象
**把元素添加到集合对象中
**遍历集合对象,一般采用迭代器
存储字符串:
Collection c = new ArrayList();
c.add("haha");
c.add("hehe");
c.add("xixi");
Iterator it = c.iterator();
while(it.hasNext())
{
String s = (String)it.next();
//对s的操作
System.out.println(s);
}
存储自定义对象:前提Student已经存在
Collection c = new ArrayList();
Student s1 = new Student("马化腾",20);
Student s2 = new Student("雷军",21);
Student s3 = new Student("马云",22);
c.add(s1);
c.add(s2);
c.add(s3);
Iterator it = c.iterator();
while(it.hasNext())
{
Student s = (Student)it.next();
System.out.println(s.getName()+"***"+s.getAge());
}
(6)List接口中的功能
A:添加元素
void add(int index,Object obj)
B:删除元素
Object remove(int index)
C:修改元素
Object set(int index,Object obj)
D:获取元素
Object get(int index)
E:列表迭代器
ListIterator listIterator()
代码体现:
存储字符串
存储自定义对象
(7)List体系下的集合类的遍历方式
A:第一种(掌握)
Iterator it = list.iterator();
B:第二种(了解,它有自己的特有功能)
ListIterator lit = list.listIterator()
C:第三种(掌握)
for(int x=0; x<list.size(); x++)
{
list.get(x);
} |
|