专注于 JetBrains IDEA 全家桶,永久激活,教程
持续更新 PyCharm,IDEA,WebStorm,PhpStorm,DataGrip,RubyMine,CLion,AppCode 永久激活教程

Java常用API(ArrayList类)

Java常用API(ArrayList类)

我们为什么要使用ArrayList类?

为了更加方便的储存对象,因为使用普通的数组来存储对象太过麻烦了,因为数组的一个很大的弱点就是长度从一开始就固定了,所以Java提供了另一个容器 java.util.ArrayList 集合类,让我们可以更便捷的存储和操作对象数据

什么是ArrayList?

所以从上面的介绍就可以看出所谓的ArrayList类就是一个长度可变的数组。

接下来我们来介绍ArrayList的使用:

第一步肯定是首先导包啦

java.util.ArrayList

注:

:这里的E是范型的意思,意思是可以存储任意的引用数据类型,注意是引用数据类型,不是基本数据类型,那么有小伙伴就会问了,那么如果我就要存储基本数据类型呢?这里java给我们提供的包装类,(所谓包装类就是将基本数据类型包装为对象)后面我在写一篇文章展开详细的叙述

130_1.png

构造方法献上:

public ArrayList() :构造一个内容为空的集合。

基本格式

ArrayList list = new ArrayList();

jdk7之后右侧<>可以留空

ArrayList list = new ArrayList<>();

下面来讲讲ArrayList的一些方法(在这里立个flag,等有时间了写几篇关于底层源码的文章)

public boolean add(E e) :将指定的元素添加到此集合的尾部。

public E remove(int index) :移除此集合中指定位置上的元素。返回被删除的元素。

public E get(int index) :返回此集合中指定位置上的元素。返回获取的元素。

public int size():返回此集合中的元素数。遍历集合时,可以控制索引范围,防止越界

下面我们来写一段代码将上面的方法来总结一下

1 这是存储对象的代码

public class Test {
    public static void main(String[] args) {
        ArrayList<Person> arrayList = new ArrayList<>();
        arrayList.add(new Person(18,"lisi"));
        arrayList.add(new Person(19,"zhangsan"));
        System.out.println(arrayList);
        //获取第一个位置的元素
        System.out.println(arrayList.get(0));
        //移除前的大小
        System.out.println("移除前的大小"+arrayList.size());
        //移除第一个位置的元素
        System.out.println(arrayList.remove(0));
        //移除后的大小
        System.out.println("移除前的大小"+arrayList.size());
    }
}
package cn.itcast;

public class Person {
    private int age;
    private  String name;

    @Override
    public String toString() {
        return "Person{" +
                "age=" + age +
                ", name='" + name + '\'' +
                '}';
    }

    public Person(int age, String name) {
        this.age = age;
        this.name = name;
    }

    public Person() {
    }

    public int getAge() {
        return age;
    }

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

    public String getName() {
        return name;
    }

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

注意:
要重写tostring ()方法不然打印出来的是地址值

结果

130_2.png

2这是存储基本数据类型的代码

package cn.itcast;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Random;
import java.util.Scanner;

public class Test {
    public static void main(String[] args) {
        ArrayList<Integer> arrayList = new ArrayList<>();
        arrayList.add(10);
        arrayList.add(20);
        System.out.println(arrayList);
    }
}

结果

130_3.png

有同学可能会问,你不是说包装成对象了吗,怎么又直接输出了,这里是因为java帮我们自动拆箱了,我后面再写一篇关于

包装类的文章详细展开叙述

3这里给大家再加点料

上面说到了ArrayList是采用范型的,这就意味着可以加入不同的类型的引用数据类型放置在同一ArrayList<>中

下面举个例子

主函数

package cn.itcast;

import java.util.ArrayList;

public class Test {
    public static void main(String[] args) {
        ArrayList<Object> arrayList = new ArrayList<>();
        arrayList.add(new Person(18,"lisi"));
        arrayList.add(new man(18,"wangwu",99));
        System.out.println(arrayList);
    }
}

Person类

package cn.itcast;

public class Person {
    private int age;
    private  String name;

    @Override
    public String toString() {
        return "Person{" +
                "age=" + age +
                ", name='" + name + '\'' +
                '}';
    }

    public Person(int age, String name) {
        this.age = age;
        this.name = name;
    }

    public Person() {
    }

    public int getAge() {
        return age;
    }

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

    public String getName() {
        return name;
    }

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

main类

 package cn.itcast;

 public class man {
     private  int age;
     private  String name;
    private  int id;

     @Override
     public String toString() {
         return "man{" +
                 "age=" + age +
                 ", name='" + name + '\'' +
                 ", id=" + id +
                 '}';
     }

     public int getId() {
         return id;
     }

     public void setId(int id) {
         this.id = id;
     }

     public man(int age, String name, int id) {
         this.age = age;
         this.name = name;
         this.id = id;
     }

     public man(int age, String name) {
         this.age = age;
         this.name = name;
     }

     public int getAge() {
         return age;
     }

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

     public String getName() {
         return name;
     }

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

结果

130_4.png

以上就是一些基本的关于ArrayList的内容,如有不正确或则不完善的地方还请各位批评指教

文章永久链接:https://tech.souyunku.com/38865

未经允许不得转载:搜云库技术团队 » Java常用API(ArrayList类)

JetBrains 全家桶,激活、破解、教程

提供 JetBrains 全家桶激活码、注册码、破解补丁下载及详细激活教程,支持 IntelliJ IDEA、PyCharm、WebStorm 等工具的永久激活。无论是破解教程,还是最新激活码,均可免费获得,帮助开发者解决常见激活问题,确保轻松破解并快速使用 JetBrains 软件。获取免费的破解补丁和激活码,快速解决激活难题,全面覆盖 2024/2025 版本!

联系我们联系我们