Day12集合、ArrayList集合

集合基础

集合概述

集合类提供一种存储空间可变的存储模型,存储的数据容量可以发生改变。

ArrayList

1.可调整的数组实现

2.是一种特殊的数据类型,泛型。

用法

再出现E的地方可以使用引用数据类型替换即可。

如:ArrayList 、 ArrayList

ArrayList构造方法及添加方法
方法名说明
public ArrayList()创建一个空的集合对象
public boolean add(E e)将指定的元素追加到此集合的末尾
public void add(int index,E element)在集合中指定位置插入指定元素

Demo:

package JavaDay12;

import java.util.ArrayList;

public class ArrayListDemo {
    /*
    1.导包
    2.创建ArrayList对象
    3.使用add添加值
     */
    public static void main(String[] args) {
        //创建一个空的集合对象
        ArrayList<String> array = new ArrayList<>();
        //使用public boolean add(E e)方法将元素追加到集合末尾
        array.add("dejavu");
        array.add("dejavuu");
        array.add("better");
        System.out.println("array:"+array);
        //使用public void add(int index,E element)方法将元素加到index索引位置,原先元素像后退一位。
        array.add(2,"get");
        System.out.println("array"+array);
    }
}
ArrayList集合常用方法
方法名说明
public boolen remove(Object o)删除指定元素,返回删除是否成功
public E remove(int index)删除指定索引处的元素,返回被删除的元素
public E set(int index,E element)修改指定索引处的元素,返回被修改的元素
public E get(int index)返回指定索引处的元素
public int size()返回集合中的元素的个数

Demo:

package JavaDay12;

import JavaStudy.ArrayDemo;

import java.util.ArrayList;

/*
            ArrayList的常用方法
            1.public boolen remove(Object o)方法,返回删除是否成功的布尔值
            2.public E remove(int index)方法,返回删除的元素值。
            3.public E set(int index,E element)方法,修改指定元素的值,返回被修改的元素
            4.public E get(int index)方法,获取集合指定索引处元素
            5.public int size()方法,获取集合元素的个数
 */
public class ArrayListDemo3 {
    public static void main(String[] args) {
        //创建空集合
        ArrayList<String> array = new ArrayList<>();
        array.add("past");
        array.add("luv");
        array.add("dejavu");
        array.add("step");
        array.add("by");
        array.add("step");
        //public boolen remove(Object o)方法,返回删除是否成功的布尔值
        System.out.println(array.remove("past"));
        //public boolen remove(Object o)方法,返回删除的值
        System.out.println(array.remove(0));
        //public E set(int index,E element)方法,修改指定元素的值,返回被修改的元素
        array.set(0, "dejavuu");
        //public E get(int index)方法,获取集合指定索引处元素
        array.get(2);
        //public int size()方法,获取集合元素的个数
        array.size();
        //输出集合的值
        System.out.println("Array:" + array);
    }
}

Demo:使用ArrayList存储学生对象并遍历

package JavaDay12;

/*
    学生类
 */
public class Student {
    private String name;
    private int age;

    //定义构造方法
    public Student() {
    }

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

    //定义set()、get()方法
    public void setName(String name) {
        this.name = name;
    }

    public String getName() {
        return name;
    }

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

    public int getAge() {
        return age;
    }

}
package JavaDay12;

import sun.plugin.javascript.navig.Array;

import java.util.ArrayList;

public class StudentTest {
    public static void main(String[] args) {
        //创建学生类集合
        //创建学生对象
        //添加学生对象到集合中
        //遍历
        ArrayList<Student> array = new ArrayList<>();

        Student stu1 = new Student("dejavu",20);
        Student stu2 = new Student("Key.L",28);
        Student stu3 = new Student("DamnShine",29);
        Student stu4 = new Student("KongFu-Pen",26);

        array.add(stu1);
        array.add(stu2);
        array.add(stu3);
        array.add(stu4);

        for(int i = 0; i<array.size(); i++){
            Student s =array.get(i);
            System.out.println("Name:"+s.getName()+" "+"Age:"+s.getAge());
        }
    }
}

Demo:遍历学生对象PLUS

package ArrayList;

/*
    学生类
 */
public class Student {
    private String name;
    private String age;

    //定义构造方法
    public Student() {
    }

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

    //定义set()、get()方法
    public void setName(String name) {
        this.name = name;
    }

    public String getName() {
        return name;
    }

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

    public String getAge() {
        return age;
    }

}
package ArrayList;

import java.util.ArrayList;
import java.util.Scanner;

public class StudentTest {
    public static void main(String[] args) {
        //创建集合对象
        //键盘键入数据
        //创建学生对象并且调用set方法将键入数据导入学生对象
        //将学生对象加到集合当中
        //遍历

//        ArrayList<Student> s = new ArrayList<Student>();
//
//        Scanner sc = new Scanner(System.in);
//        System.out.println("请输入学生姓名:");
//        String name = sc.nextLine();
//        System.out.println("请输入学生年龄:");
//        String age = sc.nextLine();
//
//        Student stu = new Student();
//        stu.setName(name);
//        stu.setAge(age);
//
//        s.add(stu);
        ArrayList<Student> array = new ArrayList<Student>();
        addStudent(array);
        addStudent(array);
        addStudent(array);

        for(int i=0;i<array.size();i++){
            Student s1 =array.get(i);
            System.out.println("Name:"+s1.getName()+" "+"Age:"+s1.getAge());
        }

    }

    //定义方法键盘录入学生对象,并把录入数据传到学生对象中,再讲学生对象数据加到集合中。
    public static void addStudent(ArrayList<Student> array){
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入学生姓名:");
        String name = sc.nextLine();
        System.out.println("请输入学生年龄:");
        String age = sc.nextLine();
        Student stu = new Student();
        stu.setName(name);
        stu.setAge(age);

        array.add(stu);
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值