概述:
ArrayList
集合的长度可以变化,数组的长度不能变化对于ArrayList
来说,有一个尖括号<E>
代表泛型
泛型:集合当中的所有元素都是统一的类型。泛型只能是引用类型,不能是基本类型
创建:
ArrayList<String> list = new ArrayList<>();
使用:
System.out.println(list); // []
add(E e)方法,向集合中添加元素,参数的类型和泛型一致
list.add("a");
list.add("b"); // 返回值就是true,代表添加元素成功
System.out.println(list); // [a, b]
remove(int index),从集合当中删除元素,参数是索引编号,返回值就是被删除的元素(索引编号对应的元素)
list.remove(1); // b
// list就变为[a]
get(int index),从集合当中获取元素,参数是索引编号,返回值就是索引编号对应的元素
list.get(0); // a
size(),获取集合的尺寸长度(集合中元素个数)
list.size(); // 1
向ArrayList集合中存储基本类型数据,必须使用基本类型对应的包装类
基本类型 包装类 byte Byte short Short int Integer(特殊) long Long float Float double Double char Character (特殊) boolean Boolean
ArrayList<Integer> list2=new ArrayList<>()
集合作为方法的参数
public static void main(String[] args) {
ArrayList<String> list=new ArrayList<>();
list.add("ni-1");
list.add("ni-12");
list.add("ni-13");
list.add("ni-14");
printArrayList(list);
}
public static void printArrayList(ArrayList<String> list){
System.out.print("{");
for (int i = 0; i < list.size(); i++) {
System.out.print(list.get(i));
if(i==list.size()-1){
System.out.print("}");
}else {
System.out.print("@");
}
}
}
集合作为方法的返回值
public static void main(String[] args) {
ArrayList<Integer> biglist = new ArrayList<>();
Random r=new Random();
for (int i = 0; i < 20; i++) {
int num=r.nextInt(100)+1;
biglist.add(num);
}
ArrayList<Integer> smalllist=getSmallList(biglist);
System.out.println(smalllist);
}
public static ArrayList<Integer> getSmallList(ArrayList<Integer> list){
ArrayList<Integer> smalllist=new ArrayList<>();
for (int i=0;i<list.size();i++){
if(list.get(i)%2==0){
smalllist.add(list.get(i));
}
}
return smalllist;
}