今天就给大家分享下ArrayList集合。
其实他和数组类似,也是一种引用类型,不过比数组好用一点。
那么什么是集合呢,它本身是一种引用类型,并且可以保存很多个数据。
它和数组的区别在于,数组的长度不可以发生改变,集合的长度可以发生改变。
集合包含很多种:ArrayList,HashSet,LinkedList...等等
今天我们就了解下ArrayList这一种,其他的集合是类似的,我们把ArrayList成为类。
那我们该怎么去写呢
1.导包
它是在java.uti.ArrayList这个包里面
- 创建
类名称 对象名 = new 类名称();
ArrayList常用的构造方法:
public ArrayList();默认无参数的构造方法
ArrayList<泛型> list= new ArrayList<>();
泛型指的是:集合当中存放的是统一的类型数据。
注意:泛型只能是引用类型,不能使基本类型。
那么我们你看下怎么去创建ArrayList集合呢:
public static void main(String[] args) {
//创建一个集合,存放String字符串类型的数据
ArrayList<String> list=new ArrayList<>();
//泛型只能是引用类型,不能写基本类型,下面的写法是错误的。
ArrayList<int> list2=new ArrayList<>();
}
- 使用:
常用方法:
- 添加元素
public boolean add(E element):这是指向集合中添加一个元素,参数是被添加的元素,而返回值是true 代表着成功
下面看下添加元素的写法:
public static void main(String[] args) {
ArrayList<String> list=new ArrayList<>();
System.out.println(list);
//向集合中添加元素:add
list.add("张飞");
list.add("吕布");
list.add("黄忠");
System.out.println(list);
boolean success =list.add("韩信");
System.out.println("添加元素是否成功:"+success);
System.out.println(list)
}
对于ArrayList集合来说,添加的add动作一定是成功的,返回值必然是true。
但是对于其他的集合来说,add方法就不一定能成功了。我们看下效果
- 获取元素
public E get(int index):这是从集合中获取去一个元素,参数是索引(从0开始)
那么我们看下写法:在原来的基础上添加即可
public static void main(String[] args) {
ArrayList<String> list=new ArrayList<>();
System.out.println(list);
//向集合中添加元素:add
list.add("张飞");
list.add("吕布");
list.add("黄忠");
System.out.println(list);
boolean success =list.add("韩信");
System.out.println("添加元素是否成功:"+success);
System.out.println(list)
//获取元素
String name=list.get(1);//注意:get只是获取到这个人,而不是删除,原来的数据还是在那里没有变化
System.out.println(name);
System.out.println(list);//[张飞, 吕布, 黄忠, 韩信]
}
看下效果:
- 获取长度
public int size();获取集合的个数,集合的长度,得到int数字。
在看下写法:
public static void main(String[] args) {
ArrayList<String> list=new ArrayList<>();
System.out.println(list);
//向集合中添加元素:add
list.add("张飞");
list.add("吕布");
list.add("黄忠");
System.out.println(list);
boolean success =list.add("韩信");
System.out.println("添加元素是否成功:"+success);
System.out.println(list)
//获取元素
String name=list.get(1);//注意:get只是获取到这个人,而不是删除,原来的数据还是在那里没有变化
System.out.println(name);
System.out.println(list);//[张飞, 吕布, 黄忠, 韩信]
//获取长度
System.out.println("集合的长度:"+list.size());
list.add("李白");
list.add("后裔");
list.add("马克");
list.add("虞姬");
System.out.println("集合的长度"+list.size());
}
那么看下效果:
注意:ArrayList集合直接打印对象名称,得到的不是地址值,而是内容,格式和数组类似,原因是因为ArrayList这个类其中的toString方法有特殊处理。
总结:这就是ArrayList的三个常用的基本类型的写法。