Java基础——常用对象API(4):集合框架1:Collection接口

1.集合简介

在这里插入图片描述
集合类的由来:
对象多了需要存储,如果对象个数不确定,就用集合容器进行存储。

数组:一旦被定义出来,大小和类型就确定了。

集合特点:
1.用于存储对象的容器。
2.集合的长度可变的。
3.集合中不可以存储基本数据类型值

集合容器因为内部的数据结构不同,有多种类型。
不断向上抽取,就形成了集合框架


2.Collection的常见方法:

1.添加
boolean add(Object obj);
boolean addAll(Collection clect);

2.删除
boolean remove(Object obj);
boolean removeAll(Collection clect);
void clear();

3.判断
boolean contains(Object obj)
boolean containsAll(Collection clect)
boolean isEmpty()

4.获取
int size()
Iterator.iterator():取出元素的方式:迭代器

5.其他:
boolean retainAll(Collection clect):取交集
Object[ ] toArray():将集合转成数组

方法演示

        Collection c = new ArrayList();//接口不能创建对象,只能用子类创建
        System.out.println(c);// []

        c.add("Hello");
        c.add("World");
        c.add("Java");
        System.out.println(c.size());//3
        System.out.println(c);// [Hello, World, Java]

        c.remove("World");
        System.out.println(c);// [Hello, Java]
        System.out.println(c.remove("111"));//false

        System.out.println(c.contains("Hello"));//true
        System.out.println(c.contains("ABC"));//false
        System.out.println(c.isEmpty());//false

        c.clear();
        System.out.println(c.isEmpty());//true
        System.out.println(c);// []
        Collection c1 = new ArrayList();
        c1.add("abc1");
        c1.add("abc2");
        c1.add("abc3");
        c1.add("abc4");

        Collection c2 = new ArrayList();
        c2.add("abc5");
        c2.add("abc6");
        c2.add("abc7");

        System.out.println(c1);// [abc1, abc2, abc3, abc4]
        System.out.println(c2);// [abc5, abc6, abc7]

        c1.addAll(c2);
        System.out.println(c1);// [abc1, abc2, abc3, abc4, abc5, abc6, abc7]
        System.out.println(c2);// [abc5, abc6, abc7]

        c1.removeAll(c2);
        System.out.println(c1);// [abc1, abc2, abc3, abc4]
        System.out.println(c2);// [abc5, abc6, abc7]

        System.out.println(c1.containsAll(c2));// false
        c1.addAll(c2);
        System.out.println(c1.containsAll(c2));// true

        System.out.println(c1);// [abc1, abc2, abc3, abc4,abc5, abc6, abc7]
        System.out.println(c2);// [abc5, abc6, abc7]

        c1.removeAll(c2);
        c1.add("abc5");
        System.out.println(c1);// [abc1, abc2, abc3, abc4, abc5]
        System.out.println(c2);// [abc5, abc6, abc7]

        c1.retainAll(c2);
        System.out.println(c1);// [abc5]

        c1.clear();
        c2.clear();
        c1.add("abc1");
        c1.add("abc2");
        c1.add("abc3");
        c1.add("abc4");

        c2.add("abc6");
        c2.add("abc7");
        c2.add("abc8");
        System.out.println(c1);// [abc1, abc2, abc3, abc4]
        System.out.println(c2);// [abc6, abc7, abc8]
        
        System.out.println(c1.retainAll(c2));//true;返回值表示的是c1是否发生改变

3.Collection集合的遍历

3.1 迭代器

        Collection c = new ArrayList();
        c.add("abc1");
        c.add("abc2");
        c.add("abc3");
        c.add("abc4");
        
        /*
        Iterator i = c.iterator();
        while(i.hasNext()) {
            System.out.println(i.next());
        } 
        */
        
        for(Iterator i = c.iterator(); i.hasNext(); ) {
            System.out.println(i.next());
        }
        //abc1
        //abc2
        //abc3
        //abc4

3.2 foreach

		Collection<String> list = new ArrayList<>();
        list.add("abc");
        list.add("qwe");
        list.add("zxc");

        for (String s : list) {
            System.out.println(s);
        }

3.3 Lambda表达式

		Collection<String> list = new ArrayList<>();
        list.add("abc");
        list.add("qwe");
        list.add("zxc");

        list.forEach(s->System.out.println(s));
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值