集合--List集合,增强for循环

本文介绍了Java中的集合与数组的区别,强调集合的灵活性和丰富的操作方法。重点讲解了List接口,通过ArrayList实例展示了如何创建和操作List集合,并详细说明了增强for循环的使用,旨在简化数组和集合的遍历。最后通过案例演示了如何用增强for循环遍历List集合。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

什么是集合?
简称集,是用来存储多个元素的容器
集合和数组的区别
元素类型
集合:引用类型(存储基本类型时自动装箱)
数组:基本类型、引用类型

元素个数

集合:不固定,可任意扩容
数组:固定,不能改变容量
集合的好处
不受容器大小限制,可以随时添加、删除元素
提供了大量操作元素的方法(判断、获取等)

Java的集合体系


单列集合(Collection)
List:
ArrayList
Set:
HashSet
双列集合(Map: key,value )
Map:
HashMap

四个接口不能直接实例化,即不能直接newXxx,要使用他们的方法必须通过创建他们的子类对象。

一、List集合

List是接口,所以可以通过创建其子类ArrayList对象来完成该接口的实例化

List list=new ArrayList();

List接口中的成员方法:

public booleanadd​(E e)
将指定的元素追加到此列表的末尾(可选操作)。E泛型,暂时可理解为Object类型
public Eget​(int index)
返回此列表中指定位置的元素。
public intsize()
返回此列表中的元素数。

使用集合的步骤:

1.创建集合对象

2.创建元素对象

3.将元素对象添加到集合对象中

4.遍历对象

 

public class Test {
    public static void main(String[] args) {
 //        往list集合中添加3个学生类,遍历
//        1.创建集合对象
        List list=new ArrayList();

//        2.创建元素对象
        Student s1=new Student("张三1",15);
        Student s2=new Student("张三1",15);
        Student s3=new Student("张三3",17);
        Student s4=new Student("张三4",18);

//        3.将元素对象添加到集合对象中
        list.add(s1);
        list.add(s2);
        list.add(s3);
        list.add(s4);
//直接打印list
        System.out.println(list);
//        获取索引为2的元素
        Object obj=list.get(2);
        System.out.println("索引为2 的元素是:"+obj);
//        获取集合中元素的个数
        System.out.println("集合的长度:"+list.size());
        System.out.println("--------------------------------");

//        4.遍历对象
        for (int i = 0; i <list.size() ; i++) {
            Object obj1=list.get(i);
            System.out.println("索引为i"+i+"的元素是"+obj1);

        }

    }
}
public class Student {

//        成员变量
    private String name;
    private int age;

    public Student() {
    }

    public Student(String name, int age) {
        this.name = name;
        this.age = age;
    }

    public String getName() {
        return name;
    }

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

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    @Override
    public String toString() {
        return "Student{" +
                "name='" + name + '\'' +
                ", age=" + age +
                '}';
    }
}

增强for循环

为什么需要增强for循环?
简化数组和集合的遍历
增强for循环的格式:
案例演示(使用增强for遍历List集合)

import java.util.ArrayList;
import java.util.List;

public class Test {
    public static void main(String[] args) {
//        1.创建集合中对象
        List list=new ArrayList();
//        2.创建元素对象
        list.add(10);
        list.add(10);
        list.add(20);
        list.add(30);
        list.add(40);
//        3.将元素对象添加到集合对象中

//        4.遍历对象
        for(Object obj:list){
            Integer i=(Integer)obj; //obj是集合中的元素其本身应该是int类型的数据,
            System.out.println(i);
        }
        for (Object obj : list) {//快捷键iter+回车,obj跟上边的不冲突
            Integer i=(Integer)obj;
            System.out.println(i);

        }

    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值