第十三课 集合的关键内容

一、集合的思维导图

单列:装菜的箱子、双列:冰箱

二、List使用

        首先 先创建一个People类 只有name这一个属性

public class People {
    private String name;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public People(String name) {
        this.name = name;
    }
}

1、初始化

        集合相当于瓶子。List、ArrayList相当于瓶子本身。<>是泛型 描述里面装的具体是什么内容

类比于People,List<People> 可以理解为是一个特殊的类,一个特殊的数据类型。ArrayList是类,而List是接口,接口不能实例化。

List<People> list = new ArrayList<People>();

//类比于
People people = new People();

2、添加元素

       直接添加一个元素的方法(在末尾添加)

People people1 = new People("小李");
List<People> list = new ArrayList<People>();
list.add(people1);

3、删除元素

        删除元素有两种方式,第一种通过元素删除,第二种通过索引删除(0开始,越界问题)

People people1 = new People("小李");
People people2 = new People("小张");
People people3 = new People("小王");
List<People> list = new ArrayList<People>();
list.add(people1);
list.add(people2);
list.add(people3);
list.remove(people3);
list.remove(0);

4、遍历

方式一:foreach(不能实现修改元素)

People people1 = new People("小李");
People people2 = new People("小张");
People people3 = new People("小王");

List<People> list = new ArrayList<People>();
list.add(people1);
list.add(people2);
list.add(people3);
for (People people : list){
    System.out.println(people.getName());
}

方式二:正常的for循环

for(int i=0;i<list.size();i++){
    System.out.println(list.get(i).getName());
}

5、其他常用API

list.size();   //获取集合元素个数
list.clear();  //清空集合所有元素
list.isEmpty();  //判断集合是否没有元素
list.addAll(list2);  //在list后拼接list2

6、Stream流

Stream 是 Java 8 引入的一个新概念,它提供了一种高效、简洁的方式来处理集合中的数据。

创建操作:stream(),从数据源中获取 Stream

中间操作:如 filter、sorted等,它们返回一个新的 Stream

终端操作:如 forEachcollect等,它们会消耗 Stream 并产生一个结果。

list = list.stream().filter(people ->
        people.getName().length()>2).collect(Collectors.toList());

list.stream().filter(people ->
        people.getName().equals("小王")).forEach(people -> people.setName("大王"));

7、小练习

1、创建一个动物类

2、创建一个集合,添加名字为猫、狗、鱼、虾、喜鹊、乌鸦、鱼的动物实例

3、使用foreach输出所有元素

4、删除名字为喜鹊的动物实例

5、删除第一个元素

6、使用正常for循环和索引输出所有元素

7、使用stream流查找名字为虾的动物实例,修改它为大虾

8、使用遍历查找名字为乌鸦的动物实例,修改它为黑乌鸦

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值