1.Collection
1)集合的特点:
A:长度是可以发生改变的。
B:集合只能存储对象。
2)集合和数组的区别?
数组:
数组长度固定。
数组可以存储基本数据类型,也可以存储引用类型。
数组存储的数据类型是一致的。
集合:
集合长度可变。
集合只能存储引用类型。
集合可以存储不同类型的对象。
3)Collection中应该有什么功能
A:添加功能
boolean add(Object obj):向集合中添加一个元素
boolean addAll(Collection c):向集合中添加一个集合的元素。(可以添加重复的元素)
B:删除功能
void clear():删除集合中的所有元素。
boolean remove(Object obj):从集合中删除指定的元素
boolean removeAll(Collection c):从集合中删除一个指定的集合元素。(只要有数据删除就返回true)
C:判断功能
boolean isEmpty():判断集合是否为空。
boolean contains(Object obj):判断集合中是否存在指定的元素。
boolean containsAll(Collection c):判断集合是否包含指定的集合中的所有元素。
(只有形参对象的所有数据都被包含了,才返回true)
D:遍历功能
Iterator iterator():就是用来获取集合中每一个元素。
E:长度功能
int size():获取集合中的元素个数
F:交集功能
boolean retainAll(Collection c):判断两个集合中是否有相同的元素。
(A集合保存的是交集元素,B集合不发生改变.返回值表示的是A集合是否发生过改变。)
G:把集合转换成数组
Object[] toArray():把集合变成数组。
4)List的特有功能:
A:添加功能
void add(int index, Object obj):在指定位置添加元素
B:删除功能
Object remove(int index):根据指定索引删除元素,并把删除的元素返回。
C:修改功能
Object set(int index, Object obj):把指定索引位置的元素修改为指定的值,返回修改前的值。
D:获取功能
int indexOf(Object o):返回指定元素在集合中第一次出现的索引
Object get(int index):获取指定位置的元素(重点记)
ListIterator listIterator():列表迭代器
E:截取功能
List subList(int fromIndex, int toIndex):截取集合。
5)集合的三种遍历方式
①for循环遍历
List list = new ArrayList();
list.add("hello");
list.add("world");
list.add("java");
for (int x = 0; x < list.size(); x++) {
if ("hello".equals(list.get(x))) {
list.add("IOS");//在集合最后添加
}
}
②普通迭代器
Iterator it = list.iterator();
while (it.hasNext()) {
String s = (String) it.next();
if ("hello".equals(s)) {
list.add("IOS");//并发修改异常
//it = list.iterator();//内存溢出异常
}
System.out.println(s);
}
③列表迭代器
ListIterator lit = list.listIterator();
while(lit.hasNext()){
String s1 = (String) lit.next();
if ("hello".equals(s1)) {
lit.add("IOS");//在hello后面添加
}
} |
|