零基础自学javase黑马课程第二十一天

37 阅读2分钟

开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第36天,点击查看活动详情

零基础自学javase黑马课程第二十一天

✨欢迎关注🖱点赞🎀收藏⭐留言✒

🔮本文由京与旧铺原创,csdn首发!

😘系列专栏:java学习

💻首发时间:🎞2022年12月29日🎠

🀄如果觉得博主的文章还不错的话,请三连支持一下博主哦

🎧作者是一个新人,在很多方面还做的不好,欢迎大佬指正,一起学习哦,冲冲冲

🐱‍💻导航小助手

零基础自学javase黑马课程第二十一天🐱‍💻导航小助手🎀ArrayList-集合的基本使用🎨ArrayList成员方法

🎀ArrayList-集合的基本使用

集合和数组的对比

长度:数组长度固定,集合长度可变

存储类型:数组可以存基本数据类型和引用数据类型

集合可以存引用数据类型和基本数据类型的包装类

🎨ArrayList成员方法

boolean add(E e)        添加元素,返回值表示是否添加成功
​
boolean remove(E e)     删除指定元素,返回值表示是否删除成功
​
E remove(int index)     删除指定索引的元素,返回被删除元素
​
E set(int index,E e)         修改指定索引中的元素,返回原来的元素
​
E get(int index)        获取指定索引的元素
​
int size()             集合的长度,也就是集合中元素的个数

创建集合的对象

泛型:限定集合中存储数据的类型

ArrayList<String> list=new ArrayList<String>( );

此时我们创建的是ArrayList的对象,它是java已经写好的一个类,这个类在底层做了一些处理,打印对象不是地址值,而是集合中存储数据内容,在展示的时候会拿[ ]把所有的数据进行包裹

package com.itheima.test9;
​
import java.util.ArrayList;
​
public class ArrayListDemo1 {
    public static void main(String[] args) {
        ArrayList<String> list=new ArrayList<>();
        //添加
        list.add("aaa");
        list.add("aaa");
        list.add("bbb");
        list.add("ccc");
        //删除
        /*
        boolean result1=list.remove("aaa");
        boolean result2=list.remove("ddd");
        String str=list.remove(2);//bbb
         */
        //修改
        /*
        String result=list.set(1,"ddd");
         */
        //查询
        /*
        String result=list.get(0);
         */
        //遍历
        for (int i = 0; i < list.size(); i++) {
            String str=list.get(i);
        }
        System.out.println(list);
    }
}
​

需求:定义一个集合,添加字符串,并进行遍历,遍历格式参照:[元素1,元素2,元素3]

package com.itheima.test9;
​
import java.util.ArrayList;
​
public class ArrayListDemo2 {
    public static void main(String[] args) {
        ArrayList<String> list=new ArrayList<>();
        list.add("111");
        list.add("222");
        System.out.println("[");
        for (int i = 0; i < list.size(); i++) {
            if(i==list.size()-1){
                System.out.println(list.get(i));
            }else{
                System.out.println(list.get(i)+",");
            }
        }
        System.out.println("]");
    }
}
​

定义一个集合,添加一些学生对象,并进行遍历

学生类的属性为:姓名,年龄,对象的数据来自键盘录入

package com.itheima.test9;
​
public class ArrayListDemo3 {
    //java bean
    //1.私有化成员变量2.空参构造方法3.带全部参数的构造方法4.get/set方法
    private String name;
    private int age;
​
    public ArrayListDemo3() {
    }
​
    public ArrayListDemo3(String name, int age) {
        this.name = name;
        this.age = age;
    }
​
    /**
     * 获取
     * @return name
     */
    public String getName() {
        return name;
    }
​
    /**
     * 设置
     * @param name
     */
    public void setName(String name) {
        this.name = name;
    }
​
    /**
     * 获取
     * @return age
     */
    public int getAge() {
        return age;
    }
​
    /**
     * 设置
     * @param age
     */
    public void setAge(int age) {
        this.age = age;
    }
​
    public String toString() {
        return "ArrayListDemo3{name = " + name + ", age = " + age + "}";
    }
}
​
package com.itheima.test9;
​
import java.util.ArrayList;
import java.util.Scanner;
​
public class Test5 {
    public static void main(String[] args) {
        ArrayList<ArrayListDemo3> list=new ArrayList<>();
        Scanner sc=new Scanner(System.in);
        for (int i = 0; i < 3; i++) {
            ArrayListDemo3 s=new ArrayListDemo3();
            System.out.println("请输入学生的姓名");
            String name=sc.next();
            System.out.println("请输入学生的年龄");
            int age=sc.nextInt();
            s.setName(name);
            s.setAge(age);
            list.add(s);
        }
        for (int i = 0; i < list.size(); i++) {
            ArrayListDemo3 stu=list.get(i);
            System.out.println(stu.getName()+", "+stu.getAge());
        }
    }
}
​