学习java第十六天
集合( ArrayList)
ArrayList类:位于java.util包下,是List集合中的一种。
ArrayList是集合的一种实现,实现了接口List,List接口继承了Collection接口。Collection是所有集合类的父类。ArrayList使用非常广泛,不论是数据库表查询,excel导入解析,还是网站数据爬取都需要使用到,了解ArrayList原理及使用方法显得非常重要。
- 数组长度不可变 ArrayList 长度可变
- 用法: ArrayList 有一个尖括号表示泛型 * 泛型:也就是集合中所有的元素都是统一的类型。
- 注意:泛型 只能是引用数据类型,不能是基本类型。
- 对于ArrayList 集合而言,直接打印得到的 不是地址值,而是内容。
- 如果内容为空,那么得到的是[]
例1
import java.util.ArrayList;
/*
*
*
* 数组长度不可变
* Arraylist 长度可变
*
* 用法
* ArrayList<E> 有一个尖括号<E>表示泛型
* 泛型:也就是集合中所有的元素都是统一的<E>类型
* 注意:泛型只能是引用数据类型,不能是基本类型
*
* 对于ArrayList集合而言,直接打印得到的不是地址值,而是内容
* 如果内容是空,则得到实[]
*
*
*/
public class Demo02ArrayList {
public static void main(String []args) {
//定义了一个ArrayList集合,集合的名字叫List,集合里面的类型都是String
//注意:jdk1.7过后的,右侧的尖括号内的 类型可以省略不写,但是左边的一定要写
ArrayList <String> list =new ArrayList<>();
System.out.println(list);
System.out.println("==============");
list.add("迪丽热巴");
System.out.println(list);
System.out.println("==============");
list.add("吴磊");
list.add("赵露思");
System.out.println(list);
//错误写法
//list.add(1000);
}
}
ArrayList构造方法和添加方法
mport java.util.ArrayList;
/*
*
* byte Byte
* short Short
* int Intger
* long Long
* float Float
* double Double
* char Character
* boolean Boolean
*
*
* 自动装箱 基本类型--》包装类型
* 自动装箱 包装类型--》基本类型
*
*
*
*/
public class Demo04ArrayListBasic {
public static void main(String []args) {
ArrayList<String>listA=new ArrayList<>();
//错误写法,泛型<>只能是引用数据类型
//ArrayList<int> listB=new ArrayList<>();
ArrayList<Integer> listB=new ArrayList<>();
listB.add(100);
listB.add(200);
System.out.println(listB);
//获取元素
int num=listB.get(1);
System.out.println(num);
ArrayList<Double> listc=new ArrayList<>();
listc.add(0.5);
System.out.println(listc);
}
}
ArrayList集合常用方法
import java.util.ArrayList;
/*
* public boolean add(E e);
* 备注: 对于ArrayList 来说,添加动作一定会成功,
*
* public E get (int index) 从集合中获取元素,index为ArrayList 索引值
* public E remove(int inidex )从集合中移除指定位置的元素,返回值为存储的实际类型
* public int size ()返回集合 大小
*
*
*
*
*
*/
public class Demo03ArrayListMethod {
public static void main(String []args) {
ArrayList<String> list = new ArrayList<>();
boolean success= list.add("成龙");
System.out.println("添加是否成功"+success);
System.out.println(list);
list.add("姚明");
list.add("刘德华");
list.add("黎明");
list.add("郭富城");
System.out.println(list);
//证明下标从0开始
String name=list.get(3);
System.out.println("索引3号位置是:"+name);
int size1=list.size();
System.out.println(size1);
String whoRemoved=list.remove (3);
System.out.println("被移除的是"+whoRemoved);
System.out.println(list);
int size2=list.size();
System.out.println(size2);
System.out.println("==========");
for(int i=0;i<list.size();i++) {
System.out.println(list.get(i));
}
}
}