虽然在Java中数组是运算速度最快的容器,但是在实际开发过程中,使用最频繁的数据容器并不是数组,而是ArrayList集合。
ArrayList是Java集合框架体系(Java Collections Framework)中的一员,ArrayList与数组类似,均将元素从0开始编号,但是它比数组更方便,长度可变就是方便处之一,并且集合与数组访问数据的方式也不同,集合可以调用功能强大的方法来满足不同需求。
ArrayList同为引用类型,符合引用类型的使用方式,如下:
导包:import java.util.ArrayList;
创建对象:与其他普通的引用数据类型创建方式完全相同,但是要指定容器中存储的数据类型:
类名<集合内元素类型> 变量 = new 类名<集合内元素类型>();
ArrayList <String> xxXX = new ArrayList<String>();
ArrayList<Integer> yyYY = new ArrayList<Integer>();
ArrayList<Double> zzZZ = new ArrayList<Double>();
**注意:**集合中只能存储引用数据类型,存储基本类型时,存储的类型为对应每个基本类型对应的引用数据。
import java.util.ArrayList;
/**
add(参数) 向集合中添加元素
get(索引) 通过索引获取集合中的元素
*/
public class ArrayListDemo01 {
public static void main(String[] args){
//创建集合ArrayList对象
ArrayList<String> nameList = new ArrayList<String>();
//调用方法
String name1 = "柳岩";
String name2 = "金莲";
nameList.add(name1);
nameList.add(name2);
nameList.add("唐嫣");
//获取集合中的元素
String thisName = nameList.get(2);
System.out.println(thisName);
System.out.println(nameList.get(1));
}
}
import java.util.ArrayList;
/**
public boolean add(元素类型 e) 直接向集合添加元素
public int size() 获取集合长度
public 元素类型 get(int index) 根据指定索引获取集合元素
public 元素类型 remove(int index) 根据指定索引删除集合元素
public 元素类型 set(int index, 元素类型obj)修改指定索引出的值为新值
*/
public class ArrayListDemo02 {
public static void main(String[] args){
//存储整数的集合
ArrayList<Integer> list = new ArrayList<Integer>();
//添加元素
int a = 10;
int b = 20;
list.add(a);
list.add(b);
list.add(123);
//删除索引为2的元素 第三个元素
int removeNumber = list.remove(2);
System.out.println(removeNumber);
//修改索引为1的元素 第二个元素
list.set(1,100);
System.out.println("---------------------");
//获取集合长度
int size = list.size();
System.out.println(size);
System.out.println("---------------------");
//获取集合中的数据
System.out.println(list.get(0));
System.out.println(list.get(1));
//System.out.println(list.get(2));
}
}
构造方法:ArrayList()
成员方法:
public boolean add(E e):添加元素
public void add(int index,E element):在指定的索引处添加一个元素
import java.util.ArrayList;
public class ArrayListDemo03 {
public static void main(String[] args) {
//创建集合对象
ArrayList<String> list = new ArrayList<String>();
//add(E e):添加元素
list.add("hello");
list.add("world");
list.add("java");
//add(int index,E element):在指定的索引处添加一个元素
list.add(1, "android");
System.out.println("array:" + list);
}
}
public E get(int index):返回指定索引处的元素
public int size():返回集合中的元素的个数
public boolean remove(Object o):删除指定的元素,返回删除是否成功
public E remove(int index):删除指定索引处的元素,返回被删除的元素
public E set(int index,E element):修改指定索引处的元素,返回被修改的元素
import java.util.ArrayList;
public class ArrayListDemo04 {
public static void main(String[] args) {
//创建集合对象
ArrayList<String> array = new ArrayList<String>();
//添加元素
array.add("hello");
array.add("world");
array.add("java");
//public E get(int index):返回指定索引处的元素
System.out.println("get:" + array.get(0));
System.out.println("get:" + array.get(1));
System.out.println("get:" + array.get(2));
//public int size():返回集合中的元素的个数
System.out.println("size:" + array.size());
//public boolean remove(Object o):删除指定的元素,返回删除是否成功
System.out.println("remove:" + array.remove("world"));//true
System.out.println("remove:" + array.remove("world"));//false
//public E remove(int index):删除指定索引处的元素,返回被删除的元素
System.out.println("remove:" + array.remove(0));
//public E set(int index,E element):修改指定索引处的元素,返回被修改的元素
System.out.println("set:" + array.set(0,"android"));
//输出
System.out.println("array:" + array);
}
}