Java collection集合

目录

collection

体系结构:

 方法:

 遍历:

1.迭代器遍历:

2.增强for遍历

3.Lambda表达式遍历


collection

属于单列集合,Map属于双列集合。Collection是单列集合的祖宗接口,其功能是全部单列集合可以继承和使用的。

体系结构:

包括list和set两大分支。其特点和具体分支如图所示:

 方法:

package Set;

import java.util.ArrayList;
import java.util.Collection;

public class demo1 {
    public static void main(String[] args) {
        Collection<String> c=new ArrayList<>();
        c.add("aaa");
        c.add("bbb");
        System.out.println(c);
        c.remove("aaa");
        int i=c.size();
        System.out.println(i);
        //判断元素是否包含
        //底层是equals方法进行判断,如果是自定义数据类型对象,那么要对该方法进行重写
        System.out.println(c.contains("bbb"));
        c.clear();
        System.out.println(c.isEmpty());
    }
}

 遍历:

1.迭代器遍历:

使用迭代器遍历,迭代器在Java中的类是Iterator,是集合专用的遍历方式。

package Set;

import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;

public class demo2 {
    public static void main(String[] args) {
        Collection<String>coll=new ArrayList<>();
        coll.add("kobe");
        coll.add("ingram");
        coll.add("durant");
        //对数据进行遍历
        //用迭代器进行获取,迭代器好比一个箭头,默认指向集合的0索引
        //利用循环去遍历
        /*注意:
        1.遍历完毕后,迭代器不会进行复位
        2.循环中只能用一次next方法
        3.在遍历时,不能对集合进行增加和移除操作,如果要删除,则要使用迭代器的remove方法。
         */
        Iterator<String> it= coll.iterator();
        while (it.hasNext()){//判断当前位置有没有元素
            String out=it.next();//获取当前位置的对象,并将迭代器指向下一个对象
            System.out.println(out);
        }
    }
}

2.增强for遍历

底层就是迭代器,于JDK5 之后出现。

package Set;

import java.util.ArrayList;
import java.util.Collection;

//修改增强for中的数据,不会改变原来的数据
public class demo3 {
    public static void main(String[] args) {
        Collection<String>coll=new ArrayList<>();
        coll.add("aaa");
        coll.add("bbb");
        coll.add("ccc");
        coll.add("ddd");
        coll.add("eee");
        for (String s : coll) {
            System.out.println(s);
        }

    }
}

3.Lambda表达式遍历

于JDK8后开始。

package Set;

import java.util.ArrayList;
import java.util.Collection;
import java.util.function.Consumer;

//lambda表达式遍历
public class demo4 {
    public static void main(String[] args) {
        Collection<String> coll=new ArrayList<>();
        coll.add("aaa");
        coll.add("bbb");
        coll.add("ccc");
        coll.add("ddd");
        coll.add("eee");
        coll.forEach(new Consumer<String>() {
            @Override
            public void accept(String s) {
                System.out.println(s);
            }
        });
        //lambda表达式
        coll.forEach( s-> System.out.println(s));

    }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值