📝个人主页:哈__
期待您的关注
目录
一、ArrayList集合
1. ArrayList集合的特点
2. ArrayList集合当中的一些方法。
①.add(Object element) 向列表的尾部添加指定的元素。
②.size() 返回列表中的元素个数。
③.get(int index) 返回列表中指定位置的元素,index从0开始。
④.add(int index, Object element) 在列表的指定位置(从0开始)插入指定元素
⑤.set(int i, Object element) 使用元素element替换索引i位置的元素,并返回替换元素。
⑥.clear() 从列表中移除所有元素。
⑦.isEmpty() 判断列表是否包含元素,不包含元素则返回 true,否则返回false。
⑧.contains(Object o) 如果列表包含指定的元素,则返回 true。
⑨.remove(int index) 移除列表中指定位置的元素,并返回被删元素,删除位置后面的元素(如果有)向前移动。
⑩.remove(Object o) 从List集合中移除第一次出现的指定元素,移除成功返回true,否则返回false。
二、LinkedList集合
1.LinkedList集合的特点
2.LinkedList集合的一些方法
①.添加
②:获取数据
③.删除
④.查询
⑤.修改
一、ArrayList集合
ArrayList数组是一个泛型数组,在定义的时候需要传入存储数据的类型。
1. ArrayList集合的特点
2. ArrayList集合当中的一些方法。
①.add(Object element) 向列表的尾部添加指定的元素。
②.size() 返回列表中的元素个数。
③.get(int index) 返回列表中指定位置的元素,index从0开始。
public static void main(String[] args) { ArrayList<String> arrayList = new ArrayList<>(); System.out.println("创建的ArrayList集合初始的大小是"+arrayList.size()); arrayList.add("张三"); arrayList.add("李四"); arrayList.add("王五"); int arrayLength = arrayList.size(); System.out.println("创建的ArrayList集合,并添加数据之后的大小是"+arrayLength); for(int i = 0;i<arrayLength;i++){ System.out.println("添加的第" +(i+1) +"条数据是"+arrayList.get(i)); } }
对于初学者来说,可以把上边我定义的arrayList看作为String [] arrayList = new String[]; 只不过ArrayList不需要你去传入数组是多大,因为ArrayList数组是动态扩充的,具体是怎么扩充的这篇文章先不做解释。
④.add(int index, Object element) 在列表的指定位置(从0开始)插入指定元素
public static void main(String[] args) { ArrayList<String> arrayList = new ArrayList<>(); arrayList.add("张三"); arrayList.add("李四"); arrayList.add("王五"); arrayList.add(0,"喜羊羊"); int arrayLength = arrayList.size(); for(int i = 0;i<arrayLength;i++){ System.out.println("添加的第" +(i+1) +"条数据是"+arrayList.get(i)); } }
如上图所示,我在arayList中的0号位置添加了一条数据,那么原本在第一条的张三的位置就会被喜羊羊代替,张三和后边的数据都向后移。这也容易理解,在一次体育课上,张三、李四和王五是跑步的前三名,老师将他们的姓名和名字记录在自己的表格当中,张三——第一名,李四——第二名,王五——第三名。现在喜羊羊觉得不服,他要重新挑战前三名,并且成功挑战获得比张三更好的成绩。老师无奈下只能将表格修改为喜羊羊——第一名,张三——第二名,以此类推。
⑤.set(int i, Object element) 使用元素element替换索引i位置的元素,并返回替换元素。
public static void main(String[] args) { ArrayList<String> arrayList = new ArrayList<>(); arrayList.add("张三"); arrayList.add("李四"); arrayList.add("王五"); arrayList.set(0,"喜羊羊"); int arrayLength = arrayList.size(); for(int i = 0;i<arrayLength;i++){ System.out.println("添加的第" +(i+1) +"条数据是"+arrayList.get(i)); } }
这一次也不难理解,体育老师在登机成绩的时候,觉得第一名眼熟,仔细一想叫做张三,于是将张三定为了第一名。实际的第一名一看排名表发现自己不在排行榜上,于是找到了老师,老师说:“张三,你不是第一名吗,怎么说没有你?”解释了一下老师才发现自己想错名字了,第一名不叫张三,他叫喜羊羊,于是老师只能将榜单的第一名修改为喜羊羊。
注意:set方法的index坐标不能超过ArrayList集合当前的长度-1 否则的话会这样,
⑥.clear() 从列表中移除所有元素。
⑦.isEmpty() 判断列表是否包含元素,不包含元素则返回 true,否则返回false。
public static void main(String[] args) { ArrayList<String> arrayList = new ArrayList<>(); arrayList.add("张三"); arrayList.add("李四"); arrayList.add("王五"); System.out.println(arrayList.isEmpty()); // false arrayList.clear(); System.out.println(arrayList.isEmpty()); //true }
⑧.contains(Object o) 如果列表包含指定的元素,则返回 true。
public static void main(String[] args) { ArrayList<String> arrayList = new ArrayList<>(); arrayList.add("张三"); arrayList.add("李四"); arrayList.add("王五"); boolean res = arrayList.contains("张三"); //true boolean res2 = arrayList.contains("喜羊羊"); //false System.out.println("是否存在张三:"+res); System.out.println("是否存在喜羊羊:"+res2); }
⑨.remove(int index) 移除列表中指定位置的元素,并返回被删元素,删除位置后面的元素(如果有)向前移动。
public static void main(String[] args) { ArrayList<String> arrayList = new ArrayList<>(); arrayList.add("张三"); arrayList.add("李四"); arrayList.add("王五"); for (int i = 0; i < arrayList.size(); i++) { System.out.println(arrayList.get(i)); } System.out.println("将张三删除"); arrayList.remove(0); for (int i = 0; i < arrayList.size(); i++) { System.out.println(arrayList.get(i)); } }
⑩.remove(Object o) 从List集合中移除第一次出现的指定元素,移除成功返回true,否则返回false。
public static void main(String[] args) { ArrayList<String> arrayList = new ArrayList<>(); arrayList.add("张三"); arrayList.add("李四"); arrayList.add("王五"); System.out.println("再次添加张三"); arrayList.add("张三"); for (int i = 0; i < arrayList.size(); i++) { System.out.println(arrayList.get(i)); } System.out.println("删除张三"); arrayList.remove("张三"); for (int i = 0; i < arrayList.size(); i++) { System.out.println(arrayList.get(i)); } }
二、LinkedList集合
1.LinkedList集合的特点
2.LinkedList集合的一些方法
①.添加
public static void main(String[] args) { LinkedList<Integer> linkedList = new LinkedList<>(); linkedList.add(1); linkedList.add(2); linkedList.add(3); linkedList.addFirst(4); linkedList.addFirst(5); linkedList.addLast(6); System.out.println(linkedList); }
实现过程
first和last指向的就是链表中的第一个位置和最后一个位置。我们可以看到addFirst的过程和first的重新指向。
②:获取数据
Object get(int index) 根据下标获取数据
Object getFirst() 它返回链表的第一个元素。
Object getLast() 它返回链接列表的最后一个元素。
public static void main(String[] args) { LinkedList<Integer> linkedList = new LinkedList<>(); linkedList.add(1); linkedList.add(2); linkedList.add(3); System.out.println(linkedList.get(1)); System.out.println(linkedList.getFirst()); System.out.println(linkedList.getLast()); }
③.删除
E remove() 删除第一个元素
E remove(int location) 删除指定位置的元素
E removeFirst() 删除并返回链接列表的头部一个元素
E removeLast() 删除并返回链接列表的尾部一个元素
代码不再展示。
④.查询
boolean contains(Object element)如果元素存在于列表中,则返回true。
LinkedList<Integer> linkedList = new LinkedList<>(); linkedList.add(1); linkedList.add(2); linkedList.add(3); linkedList.add(1); System.out.println("是否出现过元素1:"+linkedList.contains(1)); //是否出现过元素1:true System.out.println("是否出现过元素4:"+linkedList.contains(4)); //是否出现过元素4:false
⑤.修改
Object set(int index,Object element)它用于用新元素替换列表中的现有元素
LinkedList<Integer> linkedList = new LinkedList<>();linkedList.add(1);linkedList.add(2);linkedList.add(3);linkedList.add(1);linkedList.set(1,9);System.out.println("更新过的链表:"+linkedList);//更新过的链表:[1, 9, 3, 1]
其他的内容不再展示了。