集合训练2

编程题

使用ArrayList完成对对象Car {name, price}的各种操作

  1. add:添加单个元素
  2. remove:删除指定元素
  3. contains:查找元素是否存在
  4. size:获取元素个数
  5. isEmpty:判断是否为空
  6. clear:清空
  7. addAll:添加多个元素
  8. containsAll:查找多个元素是否都存在
  9. removeAll:删除多个元素
    使用增强for和迭代器来遍历所有的car,需要重写Car 的toString方法
import java.util.ArrayList;
import java.util.Iterator;

public class Homework02 {
    public static void main(String[] args) {
        //创建一个ArrayList
        ArrayList arrayList = new ArrayList();

        //add:添加单个元素
        arrayList.add(new Car("test1", 1));
        arrayList.add(new Car("test2", 2));
        arrayList.add(new Car("test3", 3));

        System.out.println("arrayList = " + arrayList);

        //remove:删除指定元素
        arrayList.remove(0);

        System.out.println("arrayList = " + arrayList);

        Car test4 = new Car("test4", 4);

        arrayList.add(test4);

        //contains:查找元素是否存在
        System.out.println("查找test4是否在arrayList中存在:" + arrayList.contains(test4));

        //size:获取元素个数
        System.out.println("arrayList = " + arrayList);
        System.out.println("arrayList中的元素个数为" + arrayList.size());

        //isEmpty:判断是否为空
        System.out.println("arrayList是否为空:" + arrayList.isEmpty());

        //clear:清空
        arrayList.clear();

        System.out.println("清空arrayList后");
        System.out.println("arrayList是否为空:" + arrayList.isEmpty());

        //addAll:添加多个元素
        ArrayList arrayList2 = new ArrayList();

        Car test1 = new Car("test1", 1);
        Car test2 = new Car("test2", 2);
        Car test3 = new Car("test3", 3);

        arrayList2.add(test1);
        arrayList2.add(test2);
        arrayList2.add(test3);
        arrayList.addAll(arrayList2);

        System.out.println("arrayList = " + arrayList);

        //containsAll:查找多个元素是否都存在
        System.out.println("arrayList中是否包含arrayList2:" + arrayList.containsAll(arrayList2));

        //removeAll:删除多个元素
        arrayList.removeAll(arrayList2);

        arrayList.add(test4);

        System.out.println("删除arrayList2后的arrayList" + arrayList);

        arrayList.addAll(arrayList2);

        //使用增强for
        System.out.println("======使用增强for======");
        for (Object o : arrayList) {
            System.out.println(o);
        }

        //迭代器
        System.out.println("======迭代器======");
        Iterator iterator = arrayList.iterator();
        while (iterator.hasNext()) {
            Object next = iterator.next();
            System.out.println(next);
        }
    }
}

//创建Car
class Car{
    private String name;
    private double price;

    public Car(String name, double price) {
        this.name = name;
        this.price = price;
    }

    public String getName() {
        return name;
    }

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

    public double getPrice() {
        return price;
    }

    public void setPrice(double price) {
        this.price = price;
    }

    @Override
    public String toString() {
        return "Car{" +
                "name='" + name + '\'' +
                ", price=" + price +
                '}';
    }
}
posted @   摘星丶仙  阅读(13)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示