Java零基础学习19:集合

编写博客目的:本系列博客均根据B站黑马程序员系列视频学习和编写目的在于记录自己的学习点滴,方便后续回忆和查找相关知识点,不足之处恳请各位有缘的朋友指正。

一、集合和数组的对比

数组和集合很相似,但集合只能存储引用数据类型,而数组两者皆可,集合的长度可自动扩容,而数组则是固定长度

java 复制代码
package www.itheima;

import java.util.ArrayList;

public class ArrayListDemo1 {
    public static void main(String[] args){
        // 1. 创建集合的对象
        // 创建对象时要确定一个泛型,这个是集合中存储的数据类型
        ArrayList<String> list = new ArrayList<>();
        System.out.println(list);
    }
}

集合定义的时候要定义一个泛型在集合的名字之后的<>之间,这里面指定了集合的泛型

二、 集合的增删查改

java 复制代码
package www.itheima;

import java.util.ArrayList;

public class ArrayListDemo1 {
    public static void main(String[] args){
        // 1. 创建集合的对象
        // 创建对象时要确定一个泛型,这个是集合中存储的数据类型
        ArrayList<String> list = new ArrayList<>();
        // 增加元素
        list.add("aaa");
        list.add("bbb");
        list.add("ccc");
        
        //删除元素
        list.remove("aaa");
        list.remove(1);
        
        //修改元素
        list.set(1,"ccc");
        
        //查询元素
        list.get(0);
        
        System.out.println(list);
        
    }
}

三、 集合遍历基本数据类型

集合添加基本数据类型,必须先把基本数据类型封装成包,其实就是在<>中更换对应的类型符,其余和正常的使用引用类型是一样的

java 复制代码
package www.itheima;

import java.util.ArrayList;

public class ArrayListDemo3 {
    public static void main(String[] args) {
        // 1. 创建集合
        ArrayList<Integer> list = new ArrayList<>();
        // 2. 添加元素
        list.add(1);
        list.add(2);
        list.add(3);
        list.add(4);
        // 3.遍历
        System.out.print("[");
        for (int i = 0; i < list.size(); i++) {
            if(i == list.size() - 1){
                System.out.print(list.get(i));
            }else {
                System.out.print(list.get(i) + ",");
            }
        }
        System.out.println("]");

    }
}

四、判断集合中数据是否存在

java 复制代码
package www.itheima;

import java.util.ArrayList;

public class ArrayListDemo6 {
    public static void main(String[] args) {
        ArrayList<User> list = new ArrayList<>();

        User u1 = new User("001", "zhangsan", "123456");
        User u2 = new User("002", "wangwu", "123456");
        User u3 = new User("003", "lisi", "123456");

        list.add(u1);
        list.add(u2);
        list.add(u3);

        boolean flag = contains(list,"002");
        System.out.print(flag);
    }

    public static boolean contains(ArrayList<User> list, String id) {
        for (int i = 0; i < list.size(); i++) {
            User u = list.get(i);
            String uid = u.getId();
            if (uid.equals(id)) {
                return true;
            }
        }
        return false;
    }
}
相关推荐
报错小能手1 小时前
线程池学习(七)实现定时(调度)线程池
学习
●VON2 小时前
从模型到价值:MLOps 工程体系全景解析
人工智能·学习·制造·von
好奇龙猫2 小时前
【人工智能学习-AI-MIT公开课第 18. 表示:分類、軌跡、過渡】
学习
hhcccchh3 小时前
学习vue第八天 Vue3 模板语法和内置指令 - 简单入门
前端·vue.js·学习
浩瀚地学3 小时前
【Java】异常
java·开发语言·经验分享·笔记·学习
Nan_Shu_6144 小时前
学习: Threejs (3)& Threejs (4)
学习
IT=>小脑虎5 小时前
2026版 Python零基础小白学习知识点【基础版详解】
开发语言·python·学习
李泽辉_6 小时前
深度学习算法学习(五):手动实现梯度计算、反向传播、优化器Adam
深度学习·学习·算法
星火开发设计6 小时前
C++ set 全面解析与实战指南
开发语言·c++·学习·青少年编程·编程·set·知识
坚持就完事了6 小时前
Linux的学习03:时间没有更新怎么解决
学习