Java学习笔记(2)第九节--ArrayList

对于数组而言,长度不可改变。

对于ArrayList而言,长度是可以改变的。

标准形式是:ArrayList<E>,有泛型的数据集合。(泛型只能是引用类型,不能是基本数据类型)

1.打印:

        之前直接打印数组,得到的是数组的地址值。但是直接打印ArrayList,得到的是里面的内容。如果内容为空,则输出[ ],如果不为空,则输出内容。

代码示例:

public class ArrayList01 {

public static void main(String[] args) {

        ArrayList list =new ArrayList<>();

        System.out.println(list);

        System.out.println("===================");

        list.add("胡歌");

        System.out.println(list);

    }

}

运行结果

2.常用方法:

        list.add()方法:往ArrayList集合里面添加数据。

        list.get(int index);从集合中获取元素,参数是索引编号,从0开始。

        list.remove(int index);从集合中删除元素,参数是索引编号,从0开始。

        public int size();获取集合的长度,返回值是集合中元素的个数

TIP:

        1.对于ArrayList集合来说,add方法必定成功,所以返回值可用可不用。对于其他集合来说,则不一定成功。

代码示例:

import java.util.ArrayList;

public class ArrayList01 {

public static void main(String[] args) {

        ArrayList list =new ArrayList<>();

        System.out.println(list);

        System.out.println("==================================");

        list.add("胡歌");    //添加数据

        System.out.println(list);

        list.add("李逍遥");

        list.add("景天");

        list.add("重楼");

        list.add("飞蓬");

        System.out.println(list);      //打印集合

        System.out.println("==================================");

        //用get()方法获取数据,用泛型接收返回的数据

        String name2 = list.get(1);  //下标从0开始,1代表得到第二个数据

        System.out.println("集合的第二个数据名字是:"+name2);

        System.out.println("==================================");

        //用remove()方法获取数据,用泛型接收返回的数据

        String deletename1 = list.remove(3);  //下标从0开始,3代表删除第四个数据

        System.out.println("集合删除的数据名字是:"+deletename1);

        System.out.println(list);

        System.out.println("==================================");

        //获取集合的长度尺寸

        int size = list.size();    //size有括号

        System.out.println("集合目前的长度是:"+size);

    }

}

运行结果

3. ArrayList集合添加基本数据类型的方法

添加方法

特殊:【Integer】整型包装类,【Character】字符型包装类

        JDK1.5 +以上支持自动装箱,自动拆箱。

代码示例:

import java.util.ArrayList;

public class DemoArrayListBasic {

public static void main(String[] args) {

        //添加整型数据

        ArrayList array1 =new ArrayList();

        array1.add(100);

        array1.add(200);

        array1.add(300);

        System.out.println(array1);

        int num2 = array1.get(1);

        System.out.println("集合的二号元素是:"+num2);

        array1.remove(0);

        System.out.println(array1);

        int size = array1.size();

        System.out.println("整型集合的长度是:"+size);

    }

}

运行结果

4. ArrayList练习:

        1.随机产生10个1~30的数字,放到整型集合中,并遍历输出

分析:

分析情况

代码示例:

import java.util.ArrayList;

import java.util.Random;

public class DemoArrayListTest1 {

public static void main(String[] args) {

        ArrayList list1 =new ArrayList<>();

        Random r =new Random();

        int range =30;

        for (int i =0; i <10; i++) {

            int num = r.nextInt(range)+1;

            list1.add(num);

        }

        System.out.println(list1);

        for(int i =0;i

            int getnum=list1.get(i);

            System.out.println("数组的第"+(i+1)+"号元素是:"+getnum);

        }

    }

}

运行结果

        2.创建4个学生对象添加到数组中,并遍历输出:

分析:

分析情况

代码示例:

2.1--标准学生类:

public class Student {

private Stringname;

    private int age;

    public Student(String name, int age) {

        this.name = name;

        this.age = age;

    }

    public Student() {

    }

    public StringgetName() {

        return name;

    }

    public void setName(String name) {

        this.name = name;

    }

    public int getAge() {

        return age;

    }

    public void setAge(int age) {

        this.age = age;

    }

}

2.2--主函数测试:

import java.util.ArrayList;

public class DemoArrayListTest2 {

public static void main(String[] args) {

        //创建泛型(学生对象)数据集合

        ArrayList list2 =new ArrayList<>();

        //创建学生对象

        Student student01 =new Student("坂田银时",28);

        Student student02 =new Student("夜兔神乐",20);

        Student student03 =new Student("志村新八",21);

        Student student04 =new Student("冲田总悟",21);

        //向集合添加数据

        list2.add(student01);

        list2.add(student02);

        list2.add(student03);

        list2.add(student04);

        //遍历集合

        for (int i =0; i < list2.size(); i++) {

    System.out.println("学生的姓名是:"+list2.get(i).getName()+"。学生的年龄是:"+ list2.get(i).getAge());

        }

    }

}

运行结果

        3.定义打印集合的方式:{元素1@元素2@元素3...}

代码示例:

3.1--打印方法:

private static void printArray(ArrayList list3) {

        System.out.print("{");

        for (int i =0; i < list3.size(); i++) {

        if(i == list3.size()-1){

                System.out.print(list3.get(i)+"}");

            }else {

                System.out.print(list3.get(i)+"@");

            }

       }

    }

}

3.2--主函数测试:

import java.util.ArrayList;

public class DemoArrayListTest3 {

public static void main(String[] args) {

        //创建集合

        ArrayList list3 =new ArrayList<>();

        list3.add("上条当麻");

        list3.add("茵蒂克丝");

        list3.add("御坂美琴");

        list3.add("风斩冰华");

        list3.add("白井黑子");

        System.out.println(list3);

        printArray(list3);

    }

}

运行结果

        4.大集合存放20个随机的数字,然后筛选出其中的偶数放入小集合中。用自定义方法实现筛选

分析:

分析情况

代码示例:

4.1--小集合方法:

private static ArrayListSmallList(ArrayList list4) {

        ArrayList list =new ArrayList<>();

        for (int i =0; i < list4.size(); i++) {

                if((list4.get(i)%2)==0){    //判断是否为偶数

                list.add(list4.get(i));

            }else{

                continue;

            }

        }

        return list;

    }

}

4.2--主函数测试:

import java.util.ArrayList;

import java.util.Random;

public class DemoArrayListTest4 {

public static void main(String[] args) {

        ArrayList list4 =new ArrayList<>();

        ArrayList smalllist =new ArrayList<>();

        Random r =new Random();

        int range =100;

        for (int i =0; i <20; i++) {

            int num = r.nextInt(range)+1;

            list4.add(num);

        }

        System.out.println(list4);

        smalllist=SmallList(list4);    //接收返回的数组

        System.out.println("偶数总共有"+smalllist.size()+"个:");

        System.out.println(smalllist);

    }

}

运行结果
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。