第三章JAVA高级特性集合

  1. 集合概述

数组特点:必须指明数据类型、数组长度

学生成绩管理:保存30个学生成绩,是学生成绩:int

Int[] scores=new int[30];

再向数组中插入两个学生成绩:

Scores=new int[32];

集合:存储任意数据类型、长度不固定

2.List集合(CRUD)

例一、ArrayList获取并打印新闻标题

需求说明:按照以下实现的步骤,使用ArrayList获取和打印新闻标题,显示效果如下图所示:

(1)创建多个各类新闻标题对象,包含ID、名称和创建者三个属性;

(2)创建存储各类新闻标题的集合对象;

(3)按照顺序依次添加各类新闻标题,使用add()方法;

(4)获取新闻标题的总数,使用size()方法;

(5)根据位置获取相应新闻标题、逐条打印每条新闻标题的名称,使用for循环遍历。

package com.vp.day01.demo01;

/**
 * 新闻类
 */
public class News {
    private int id;  //ID
    private String name;//名称
    private String author;//创建者

    public News() {
    }

    public News(int id, String name, String author) {
        this.id = id;
        this.name = name;
        this.author = author;
    }

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

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

    public String getAuthor() {
        return author;
    }

    public void setAuthor(String author) {
        this.author = author;
    }
}
package com.vp.day01.demo01;

import java.util.ArrayList;

public class Test {
    public static void main(String[] args) {
        //创建多个各类新闻标题对象
        News news=new News(1,"汽车","管理员");
        News news1=new News(2,"高考","管理员");
        //创建存储各类新闻标题的集合对象
        ArrayList arrayList=new ArrayList();
        //按照顺序依次添加各类新闻标题
        arrayList.add(news);
        arrayList.add(news1);
        //获取新闻标题的总数,使用size()方法
        System.out.println("新闻标题数目为:"+arrayList.size()+"条");
        //根据位置获取相应新闻标题、逐条打印每条新闻标题的名称
        for (int i=0;i<arrayList.size();i++){
            News news2=(News)arrayList.get(i);
            System.out.println(i+1+":"+news2.getName());
        }
    }
}

例二、LinkedList添加和删除新闻标题

需求说明:在作业1的基础上,换用LinkedList存储新闻数据,并且使用LinkedList的getFirst()和getLast()方法获取第一条和最后一条数据,以及removeFirst()和removeLast()方法删除第一条和最后一条数据,输出效果如下图所示。

package com.vp.day01.demo02;

/**
 * 狗类
 */
public class Dog {
    private String name;//名字
    private String strain;//品种

    public Dog() {
    }

    public Dog(String name, String strain) {
        this.name = name;
        this.strain = strain;
    }

    public String getName() {
        return name;
    }

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

    public String getStrain() {
        return strain;
    }

    public void setStrain(String strain) {
        this.strain = strain;
    }

    @Override
    public String toString() {
        return  name + "\t\t" + strain ;
    }
}
package com.vp.day01.demo02;

import com.vp.day01.demo08.Dog;

import java.util.ArrayList;

public class Test {
    public static void main(String[] args) {
        Dog dog=new Dog("欧欧","雪娜瑞");
        Dog dog1=new Dog("亚亚","拉布拉多");
        Dog dog2=new Dog("菲菲","拉布拉多");
        Dog dog3=new Dog("美美","雪娜瑞");

        ArrayList<Dog> arrayList=new ArrayList<>();

        arrayList.add(dog);
        arrayList.add(dog1);
        arrayList.add(dog2);
        arrayList.add(dog3);

        System.out.println("共计有"+arrayList.size()+"条狗狗。");
        System.out.println("分别是:");
        for (Dog dog4:arrayList){
            System.out.println(dog4);
        }

        System.out.println("------------------------------------------");
        System.out.println("删除之前共计有"+arrayList.size()+"条狗狗。");
        System.out.println();

        //删除指定位置的狗,使用remove()方法
        //arrayList.remove(0);下标
        arrayList.remove(dog);
        System.out.println("删除之后共计还有"+arrayList.size()+"条狗狗。");
        System.out.println("分别是:");
        for (Dog dog4:arrayList){
            System.out.println(dog4);
        }


        //判断集合中是否包含指定狗,使用contains()方法
        System.out.println("------------------------------------------");
        boolean contains = arrayList.contains(dog2.getName());
        System.out.println("集合中包含"+contains+"的信息");

    }
}

猜你喜欢

转载自blog.csdn.net/qq_40115919/article/details/81545658