【Java】15. 集合

15. 集合

不同于数组,集合是提供一种存储空间可变的存储模型,存储的数据不需要考虑索引,容量可以发生改变

15.1 ArrayList

长度可以变化,只能存储引用数据类型

15.1.1 存储String类

public class ArrayListDemo02 {
    public static void main(String[] args) {
        //创建集合 初识容量是 5,默认为 10
        ArrayList<String> array = new ArrayList<String>(5);
        //添加元素
        array.add("hello");
        //System.out.println(array.remove("world"));//删除指定元素,返回删除是否成功
        //System.out.println(array.remove(1));//删除指定索引处的元素,返回被删除的元素
        //System.out.println(array.set(1,"javaee"));//修改指定索引处的元素,返回被修改的元素
        //System.out.println(array.get(0));//返回指定索引处的元素
        System.out.println(array.size());//返回集合中的元素的个数
        System.out.println("array:" + array);//输出集合
    }
}
        //遍历
        //快捷键: array.fori 正向遍历
        //array.forr 倒着遍历

15.1.2 存储对象

public class ArrayListDemo4 {
    public static void main(String[] args) {
        ArrayList<Student> list = new ArrayList<>();
        Student s1 = new Student("zhangsan",16);
        Student s2 = new Student("lisi",15);
        list.add(s1);
        list.add(s2);
        for (int i = 0; i < list.size(); i++) {
            Student stu = list.get(i);
            System.out.println(stu.getName() + ", " + stu.getAge());
        }
    }
}

15.1.3 List 接口与实现

特点是一旦 list 中元素确定,就不能再向 list 添加、移除元素。

package com.example.demo;import java.util.ArrayList;
import java.util.List;public class TestList {
    public static void main(String[] args) {
        List<Integer> list1 = new ArrayList<>();
        list1.add(1);
        list1.add(2);
        list1.add(3);
        System.out.println(list1.getClass());  // class java.util.ArrayList
        List<Integer> list2 = List.of(1, 2, 3);
        System.out.println(list2.getClass());  // class java.util.ImmutableCollections$ListN
        List<Integer> list3 = List.of(1, 2);
        System.out.println(list3.getClass());  // class java.util.ImmutableCollections$List12
    }
}

你可能感兴趣的:(Java,java,python,windows)