Java基础-ArrayList

ArrayList<E>,<E>是泛型,是ArrayList里存储的类型,E用来占位,只能为引用类型,不可以为基本类型。

    public static void main(String[] args) {
        ArrayList<String> list = new ArrayList<>();
        list.add("TXX");
        list.add("TXX1");
        list.add("TXX2");
        System.out.println(list);
        System.out.println(list.get(2));
        String remove = list.remove(0);
        System.out.println("被删除的人是:" + remove);
        int size = list.size();
        System.out.println(size);
    }

add添加,对于添加,一定会成功,返回值可用可不用(返回值true和false)但是其他的集合可能会添加不成功,所以add添加有返回值

remove删除,list.remove(3);删除第四个集合元素

size集合长度

获取集合第二个元素,集合名【点】get(1);

·遍历集合

    public static void main(String[] args) {
        ArrayList<String> list = new ArrayList<>();
        list.add("迪丽热巴");
        list.add("古力娜扎");
        list.add("马尔扎哈");
        //遍历集合
        for (int i = 0; i < list.size(); i++) {
            System.out.println(list.get(i));
        }
    }

使用基本类型需要进行包装,包装类和基本类有对应关系

 

 

 

    public static void main(String[] args) {
        AbstractList<Integer> list = new ArrayList<>();
        list.add(100);
        list.add(200);
        list.add(300);
        System.out.println(list);
        int in = list.get(2);
        System.out.println(in);
    }
题目一:
生成六个1~33之间的随机数,添加到集合,遍历集合
1,创建集合
2,产生随机数
3,循环六次
4,循环内调用r.nextInt(int n)
5,把数字添加到集合
6,遍历集合
    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));
        }
    }
int num = r.nextInt(33) + 1;random产生的随机数范围是0-32,整体+1就是1-33了

题目2:

自定义4个学生对象,添加到集合,并遍历

思路:

1,自定义学生类

2,创建集合,存储学生对象。泛型Student

3,创建四个学生对象

4,将学生放到集合中

5,遍历集合

    public static void main(String[] args) {
        ArrayList<Student> list = new ArrayList<>();
        //添加学生对象
        Student one = new Student("洪七公",18);
        Student two = new Student("欧阳锋",19);
        Student three = new Student("黄药师",20);
        Student four = new Student("段智兴",21);
        //将学生添加到集合中
        list.add(one);
        list.add(two);
        list.add(three);
        list.add(four);
        //遍历集合
        for (int i = 0; i < list.size(); i++) {
            Student stu = list.get(i);
            System.out.println("姓名:" + stu.getName() + ",年龄:" + stu.getAge());
        }

    }

Student类

    private String name;
    private int age;
题目三
:定义指定格式打印集合的方法ArrayList作为参数,{}括起来,@分割元素

 思路:

1,定义集合

2,遍历集合,先来一个  {  然后判断,如果集合 i = 集合长度 -1 ,那么就是最后一个name,后面拼接  }  ,else其他的后面拼@

3,调用方法

public class Demo05ArrayListPrint {
    public static void main(String[] args) {
        ArrayList<String> list = new ArrayList<>();
        list.add("张三丰");
        list.add("宋远桥");
        list.add("张无忌");
        list.add("张翠山");//张翠山是张无忌他爸,张三丰是张翠山师傅
        System.out.println(list);
        getPrint(list);
    }

    public static void getPrint(ArrayList<String> list) {

        System.out.print("{");
        for (int i = 0; i < list.size(); i++) {
            String name = list.get(i);
            if (i == list.size() -1 ){
                System.out.println(name + "}");
            }else {
                System.out.print(name + "@");
            }
        }
    }
}

结果:

{张三丰@宋远桥@张无忌@张翠山}

题目四:
大集合存入20个随机数字,晒筛选出偶数,放到小集合里
要求:使用自定义方法来实现筛选

思路:

1,创建大集合,把20个随机数放在里面

2,创建方法,大集合作为方法参数,小集合作为返回值

3,调用方法,遍历方法

import java.util.ArrayList;
import java.util.Random;

/*
题目:
大集合存入20个随机数字,晒筛选出偶数,放到小集合里
要求:使用自定义方法来实现筛选

 */
public class Demo07ArrayListReturn {
    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 = getSamllList(bigList);
        for (int i = 0; i < smallList.size(); i++) {
            System.out.print(smallList.get(i) + ",");
        }
//        System.out.println(getSamllList(bigList));
    }
    //这个方法接收大集合参数 返回小集合都是偶数
    public static ArrayList<Integer> getSamllList(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;
    }
}

每日博客

posted @ 2021-12-03 09:44  TTTX  阅读(72)  评论(0)    收藏  举报