Java常用API(ArrayList类)
我们为什么要使用ArrayList类?
为了更加方便的储存对象,因为使用普通的数组来存储对象太过麻烦了,因为数组的一个很大的弱点就是长度从一开始就固定了,所以Java提供了另一个容器 java.util.ArrayList 集合类,让我们可以更便捷的存储和操作对象数据
什么是ArrayList?
所以从上面的介绍就可以看出所谓的ArrayList类就是一个长度可变的数组。
接下来我们来介绍ArrayList的使用:
第一步肯定是首先导包啦
java.util.ArrayList
注:
构造方法献上:
public ArrayList() :构造一个内容为空的集合。
基本格式
ArrayList
jdk7之后右侧<>可以留空
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 ()方法不然打印出来的是地址值
结果
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);
}
}
结果
有同学可能会问,你不是说包装成对象了吗,怎么又直接输出了,这里是因为java帮我们自动拆箱了,我后面再写一篇关于
包装类的文章详细展开叙述
3这里给大家再加点料
上面说到了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;
}
}
结果
以上就是一些基本的关于ArrayList的内容,如有不正确或则不完善的地方还请各位批评指教