Collection常用方法
Collection常用方法
- 集合一旦发生变化,迭代器一定要重新获取
- 如果没有重新获取,会报java.util.ConcurrentModificationException异常
- 在迭代器迭代过程中,不能直接调用集合的remove方法,此时迭代器不会自动更新,
会报java.util.ConcurrentModificationException异常
要使用迭代器自身的remove方法
/*
1.boolean add(Object e) 添加元素
2.Integer size() 返回元素个数
3.boolean remove(Object e) 删除元素
4.boolean contains(Object e) 判断是否包含元素
5.void clear() 清空集合
6.boolean isEmpty() 判断集合是否为空
7.Object[] toArray() 将集合转换成数组
8.Iterator iterator() 获取迭代器对象
*/
public class CollectionTest {
public static void main(String[] args) {
/* Collection 的常用方法*/
Collection c = new ArrayList();
c.add(21);
int size = c.size();
System.out.println(size);//1
boolean remove = c.remove(21);
System.out.println(remove);//true
boolean remove2 = c.remove(21);
System.out.println(c.size());//0
System.out.println(remove2);//false
c.add("jqc");
boolean jqc = c.contains("jqc");
System.out.println(jqc);//true
c.clear();
boolean empty = c.isEmpty();
System.out.println(empty);//true
c.add("Java");
c.add("13");
Object[] objects = c.toArray();
for (Object object : objects) {
System.out.println(object);
}
}
}
public class CollectionTest2 {
public static void main(String[] args) {
//Iterator 迭代器对象,用来集合遍历
Collection c = new ArrayList();
c.add(1);
c.add(2);
c.add(3);
c.add(4);
c.add(5);
c.add(5);
Iterator it = c.iterator();
while (it.hasNext()){
Object next = it.next();
//存进去是什么类型,取出的就是什么类型
if(next instanceof Integer){
//有序可重复
//有序:存进去和取出来的顺序一致
//可重复:元素可重复
System.out.println("取出的是整数类型"+next);//1 2 3 4 5 5
}
}
//增强for
for(Object e : c){
System.out.println(e);//1 2 3 4 5 5
}
Collection c2 = new HashSet();
c2.add(10);
c2.add(2);
c2.add(30);
c2.add(4);
c2.add(5);
c2.add(5);
Iterator it2 = c2.iterator();
while (it2.hasNext()){
Object obj = it2.next();
//无序:存进去和取出来的顺序不一定相同
//不可重复:元素不能重复
System.out.println(obj);//2 4 5 10 30
}
}
}
我成功因为我志在成功
浙公网安备 33010602011771号