ArrayList的使用方法

API:应用程序编程接口

引用类型的一般使用步骤:
1.导包 import 包路径.类名称
如果需要使用的目标类,和当前类位于同一个包下,则可以省略导包语句不写。
只有java.lang包下的内容不需要导包,其他的包都需要import语句 。
2.创建
类名称 对象名 =new 类名称();
3.使用
对象名.成员方法名

ArrayList(集合)

1.ArrayList的创建

	数组的长度不可以发生改变。但是ArrayList集合的长度是可以随意变化的。
    对于Arraylist来说,有一个尖括号<E>代表泛型。
    泛型:也就是装在集合当中的所有元素,全都是统一的什么类型。
    注意:泛型只能是引用类型,不能是基本类型。
    如果希望向集合中添加基本类型的数据,必须使用基本类型对应的“包装类”。
    基本类型        包装类(引用类型,包装类都位于java.lang包下,java.lang包下的内容在使用时不用导包)
    byte               Byte
    short             Short
    int                 Integer【特殊】
    double          Double
    float              Float
    boolean        Boolean
    char              Character【特殊】
    long              Long
     注意事项:
    对于Arraylist集合来说,直接打印得到的不是地址值,而是内容。
    如果内容是空,得到的是空的中括号: [ ]    (见代码)
import java.util.ArrayList;       //导包,
public class DemoArrayList {
    public static void main(String[] args) {
        //创建一个ArrayList集合。集合的名称是list,里面装的都是String类型。   
        ArrayList<String> list=new ArrayList<>();
        System.out.println(list);						//输出结果是[]
 		System.out.println("=========================");
        
        //向集合中添加数据,需要用到add方法
        list.add("迪丽热巴");
        list.add("古力娜扎");
        System.out.println(list);
        System.out.println("=========================");
        
		//向集合中添加基本类型int型的数据,使用包装类Integer
        ArrayList<Integer> listA=new ArrayList<>();
        listA.add(1);
        listA.add(2);
        listA.add(3);
        listA.add(4);
        System.out.println(listA);
    }
}

输出结果:
在这里插入图片描述

2.ArrayList中的常用方法

Public boolean add(E e);:
向集合中添加元素,参数类型和范型一致
备注:对于ArrayList集合来说,add添加动作一定是成功的,所以返回值可以不用,但是,对于其他集合来说,add添加操作不一定会成功。

public E get(int index);:
从集合中获取元素,参数是索引编号,返回值是对应位置的元素;

Public E remove (int index);:
从集合中删除元素,参数是索引编号,返回值是被删除的元素;

public int size();:
获取集合的尺寸长度,返回值是集合中包含的元素个数。
eg:

import java.util.ArrayList;

public class DemoArrayListMethod {
    public static void main(String[] args) {
        ArrayList<String> list=new ArrayList<>();
        System.out.println(list);

        //向集合中添加元素
        boolean sucess= list.add("袁绍");
        System.out.println(list);
        System.out.println(sucess);
        list.add("曹操");
        list.add("刘备");
        list.add("孙权");
        System.out.println(list);
        //输出集合的长度
        System.out.println("集合的长度是:"+list.size());
        System.out.println("=========================");

        //从集合中获取元素
        String name=list.get(2);
        System.out.println("2号索引的位置"+name);
        System.out.println("=========================");

        //从集合中删除元素
        String remove =list.remove(1);
        System.out.println("被删除的元素是"+remove);
        System.out.println(list);
        System.out.println("=========================");

        //获取集合的长度
        int size=list.size();
        System.out.println("删除后集合的长度"+size);

        //遍历集合
        for (int i = 0; i < list.size(); i++) {
            System.out.println(list.get(i));
        }
    }

}

输出结果:
在这里插入图片描述

3.有关ArrayList的练习题

1.生成6个1~33之间的随机整数,添加到集合,并遍历集合。
思路:
1.需要存储6个数字,创建一个集合,;
2.产生随机数,需要用到Random;
3.用循环6次,产生6个随机数字: for循环;
4.循环内调用r. nextInt(int n),参数是33,范围时[0,32),然后整体加1;
5.把数字添加到集合中: add();
6.遍历集合: for. size、get

代码:

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

public class DemoArrayListRandem {
    public static void main(String[] args) {

        ArrayList<Integer> ALRandem=new ArrayList<>();
        Random r=new Random();

        for (int i = 0; i < 6; i++) {
            int num=r.nextInt(33)+1;
            ALRandem.add(num);
        }

        for (int i = 0; i < ALRandem.size(); i++) {
            System.out.print(ALRandem.get(i)+"  ");
        }
    }
}

结果:
在这里插入图片描述
2.自定义4个学生对象,添加到集合,并遍历。
思路:
1.自定义Student学生类, 四个部分。
2.创建一个集合,用来存储学生对象。泛型:
3.根据类,创建4个学生对象。
4.将4个学生对象添加到集合中: add
5.遍历集合: for、size、get

代码:
创建一个学生类Student

public class Student {
    private String name;//姓名
    private int age;//年龄

    //无参数的构造方法
    public Student() {
    }

    //全参数的构造方法
    public Student(String name, int age) {
        this.name = name;
        this.age = age;
    }

    //name的getter/setter方法
    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    //age的getter/setter方法
    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }
}

创建集合,添加和遍历

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

public class DemoArrayListStudent {
    public static void main(String[] args) {
    //创建集合
    ArrayList<Student> list =new ArrayList<>();
        //自定义4个学生对象
        Student one =new Student("张三",20);
        Student two =new Student("李四",20);
        Student three =new Student("王二麻",20);
        Student four =new Student("孙五",20);
        //添加到集合
        list.add(one);
        list.add(two);
        list.add(three);
        list.add(four);
        //遍历集合
        for (int i = 0; i < list.size(); i++) {
            Student st=list.get(i);
            System.out.println("姓名:"+st.getName()+
            ",年龄:"+st.getAge());
        }
    }
}

结果:
在这里插入图片描述

3.定义以指定格式打印集合的方法(Arraylist类型作为参数),使用{}扩起集合,使用@分隔每个元素。格式参照{元素@元素@元素}。
思路:
1.创建一个集合,用来存储需要打印的对象。泛型:
2.构造打印函数 printArryList(参数类型为ArrayList)

import java.util.ArrayList;

public class DemoArrayListPrint {
    public static void main(String[] args) {
        ArrayList<String> list=new ArrayList<>();
        list.add("张三丰");
        list.add("张无忌");
        list.add("张翠山");
        list.add("殷素素");
        list.add("赵敏");

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

    }

        /*
        方法定义的三要素:
        返回值类型:无返回值,所以为void 
        方法名称:printArryList
        参数列表:ArrayList<String>(参数类型) list(参数名称)
        */

    public static void printArryList(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.print(name+"}");
            }
            else
            System.out.print(name+"@");
        }
    }
}

输出结果:
在这里插入图片描述
4.用一个大集合存入20个随机数字,然后筛选其中的偶数元素,放到小集合当中,要求使用自定义的方法来实现筛选。
思路:
1.创建集合存储20个int型随机数字:范型:
2.随机数字:Random nextInt();
3.for循环20次,生成随机数,添加到集合中去
4.定义一个方法,筛选偶数元素,得到小集合。

方法三要素:
返回值类型:ArrayList (小集合,元素个数不确定)
方法名称:getSmallList
参数列表:ArrayList (大集合,里面有20个随机数)
筛选出偶数:%2==0;
判断:如果是偶数,放入小集合,如果不是,不放。

代码:

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

public class DemoArrayListReturn {
    public static void main(String[] args) {
    //创建大集合,存储20个**int型**随机数字:范型:<Integer>
        ArrayList<Integer> bigList = new ArrayList<>();
   //生成20个随机数,添加到大集合中去
     Random r = new Random();
        for (int i = 0; i < 20; i++) {
            int num = r.nextInt(100) + 1;
            bigList.add(num);
        }
        System.out.println(bigList);
        System.out.println("====================");

        ArrayList<Integer> smallList =getSmallList(bigList);
        System.out.println("总共有"+smallList.size()+"个偶数。");
        for (int i = 0; i < smallList.size(); i++) {
            System.out.print(smallList.get(i)+"  ");
        }

    }
//构造函数,从大集合中筛选偶数,放入小集合中去。
    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;
    }

}
  • 1
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值