【Java学习】ArrayList集合

ArratList

和数组的区别
数组长度不可以发生改变
但是ArrayList集合长度可以随意改变。

ArrayList,有一个尖括号<…>代表泛型
泛型:也就是装在集合当中的所有元素,全都是统一的什么类型。

ArrayList<int> list = new ArrayList<>();        //错误写法
ArrayList<Integer> list = new ArrayList<>(); 

注意:泛型只能是引用类型,不能是基本类型

基本类型 引用类型
byte Byte
int Integer
long Long
short Short
float Float
double Double
char Character
boolean Boolean

注意:
对于ArrayList集合来说,直接打印得到的不是地址值,而是内容
如果内容是空,得到的是空的中括号:[ ]

常用方法

集合名称.add(); //向集合中添加元素,类型与泛型一致
集合名称.get(); //从集合中获取元素,参数是索引编号,返回值是对应位置的元素
集合名称.remove(); //从集合当中删除元素,参数是索引编号,返回值就是被删除掉的元素

练习题1

生成6个1~33之间的随机整数,添加到集合,遍历集合

import java.util.ArrayList;
import java.util.Random;
public class Demo01ArrayListRandom {
    public static void main(String[] args) {
        ArrayList<Integer> list = new ArrayList<>();
        Random r = new Random();

        for (int i = 0; i < 6; i++) {
            int num = r.nextInt(33) + 1;
            list.add(num);
        }
        // 遍历集合
        for (int i = 0; i < list.size(); i++) {
            System.out.println(list.get(i));
        }
    }
}

练习题2

用一个大集合存入20个随机数字,然后筛选其中的偶数元素,放到小集合中

import java.util.ArrayList;
import java.util.Random;
public class Demo04ArrayListReturn {
    public static void main(String[] args) {
        ArrayList<Integer> bigList = new ArrayList<>();
        Random r = new Random();
        for (int i = 0; i < 20; i++) {
            int num = r.nextInt(100) + 1;
            bigList.add(num);
        }
        // 创建一个集合来接收返回的偶数   
        //  【学习中的错误,直接调用方法】
        ArrayList<Integer> smallList = getSmallList(bigList);
        System.out.println("总共有" + smallList.size());
        for (int i = 0; i < smallList.size(); i++) {
            System.out.println(smallList.get(i));
        }
    }
    // 可以用集合作为返回值类型,将bigList中的值作为参数传入
    //将其中的偶数放到smallList中返回
    public static ArrayList<Integer> getSmallList(ArrayList<Integer> bigList){
        ArrayList<Integer> smallList = new ArrayList<>();
        for (int i = 0; i < bigList.size(); i++) {
            int num = bigList.get(i);
            if (num % 2 == 0){
                smallList.add(num);
            }
        }
        return smallList;
    }
}
发布了7 篇原创文章 · 获赞 2 · 访问量 265

猜你喜欢

转载自blog.csdn.net/sy140823/article/details/104564348