Java集合框架-Collection子接口之一-List接口方法
-
List除了从Collection集合继承的方法外,List集合里添加了一些根据索引来操作集合元素的方法
-
Collcetion下的方法:
-
方法名 说明 add(E e) 确保此集合包含指定的元素(可选操作) addAll(Collection<? extends E> c) 将指定集合中的所有元素添加到这个集合中 clear() 移除集合中的所有元素 contains(Object o) 判断集合是否包含Object o元素,true-包含 ;false-不包含 containsAll(Collection<?> c) 判断集合是否包含Collection<?> c集合,true-包含;false-不包含 equals(Object o) 将指定对象与集合比较,比较二者是否相等 hashCode() 返回集合的哈希值 isEmpty() 判断集合是否为空,true-空;false-非空 Iterator iterator() 返回集合的元素迭代器 remove(Object o) 如果元素在集合中存在,从集合中移除指定元素的实例。 removeAll(Collection<?> c) 把指定集合Collection<?> c中的所有元素从集合中删除 retainAll(Collection<?> c) 在集合中留下指定集合Collection<?> c中的所有元素(取交集) size() 返回此集合中的元素的数目。 toArray() 返回包含此集合中所有元素的数组。 toArray(T[] a) 返回包含此集合中所有元素的数组;返回数组的运行时类型是指定的数组的运行时类型。 -
List添加的方法
- void add(int index,Object ele):在Indext位置插入ele元素
- boolean addAll(int index,Collection eles):从index位置开始将eles中的所有元素添加进来
- Object get(int index):获取指定index位置的元素
- int indexOf(Object obj):返回obj在集合中首次出现的位置
- int lastIndexOf(Object obj):返回obj在当前集合中末次出现的位置
- Object remove(int index):移除指定index位置的元素,并返回此元素
- Object set(int index,Object ele):设置指定index位置的元素为ele,返回被替换的元素
- List subList(inde fromIndex,int toIndex):返回从fromIndex到toIndex位置的子集合,原集合不变
-
package com.jl.java.base.collection; import org.junit.Test; import java.util.ArrayList; import java.util.Date; /** * - void add(int index,Object ele):在Indext位置插入ele元素 * - boolean addAll(int index,Collection eles):从index位置开始将eles中的所有元素添加进来 * - Object get(int index):获取指定index位置的元素 * - int indexOf(Object obj):返回obj在集合中首次出现的位置 * - int lastIndexOf(Object obj):返回obj在当前集合中末次出现的位置 * - Object remove(int index):移除指定index位置的元素,并返回次元素 * - Object set(int index,Object ele):设置指定index位置的元素为ele * - List subList(inde fromIndex,int toIndex):返回从fromIndex到toIndex位置的子集合 * @author jiangl * @version 1.0 * @date 2021/4/22 13:15 */ public class ListTest { @Test public void ArrayListTest(){ ArrayList list = new ArrayList(); list.add(123); list.add(456); list.add("AA"); list.add(new Date()); System.out.println(list); //void add(int index,Object ele):在Indext位置插入ele元素 list.add(2,"BB"); System.out.println(list); //boolean addAll(int index,Collection eles):从index位置开始将eles中的所有元素添加进来 ArrayList list2 = new ArrayList(); list2.add("CC"); list2.add(789); list.addAll(4,list2);//[123, 456, AA, Thu Apr 22 16:40:37 CST 2021] System.out.println(list);//[123, 456, BB, AA, Thu Apr 22 16:40:37 CST 2021] //Object get(int index):获取指定index位置的元素 System.out.println(list.get(6));//Thu Apr 22 16:40:37 CST 2021 //int indexOf(Object obj):返回obj在集合中首次出现的位置 System.out.println(list.indexOf(789));//5 System.out.println(list.indexOf(78119));//不存在则为-1 //int lastIndexOf(Object obj):返回obj在当前集合中末次出现的位 System.out.println(list.lastIndexOf(789));//5 //Object remove(int index):移除指定index位置的元素,并返回次元素 System.out.println(list.remove(2));//BB System.out.println(list);//[123, 456, AA, CC, 789, Thu Apr 22 16:42:06 CST 2021] //Object set(int index,Object ele):设置指定index位置的元素为ele System.out.println(list.set(2, 4567));//返回被替换的元素 System.out.println(list);//[123, 4567, AA, CC, 789, Thu Apr 22 16:42:06 CST 2021] System.out.println(list.subList(2,4));//[4567, CC] System.out.println(list);//[123, 4567, AA, CC, 789, Thu Apr 22 16:42:06 CST 2021] } }
-
结果:
- [123, 456, AA, Thu Apr 22 16:45:00 CST 2021]
[123, 456, BB, AA, Thu Apr 22 16:45:00 CST 2021]
[123, 456, BB, AA, CC, 789, Thu Apr 22 16:45:00 CST 2021]
Thu Apr 22 16:45:00 CST 2021
5
-1
5
BB
[123, 456, AA, CC, 789, Thu Apr 22 16:45:00 CST 2021]
AA
[123, 456, 4567, CC, 789, Thu Apr 22 16:45:00 CST 2021]
[4567, CC]
[123, 456, 4567, CC, 789, Thu Apr 22 16:45:00 CST 2021]
- [123, 456, AA, Thu Apr 22 16:45:00 CST 2021]
-
-
List接口方法的总结:
- 增:add(Object o)
- 删:remove(int index)/remove(object obj)
- 改:set(int index,Object ele)
- 查:get(int index)
- 插入:add(int index,Object ele)
- 长度:size()
- 遍历:
- Iterator迭代器方式
- 增强for循环
- 普通循环-利用索引
-
遍历
-
@Test public void test2(){ ArrayList list = new ArrayList(); list.add(123); list.add(456); list.add("AA"); list.add(new Date()); System.out.println(list); //方法一 Iterator iterator = list.iterator(); while(iterator.hasNext()){ System.out.println(iterator.next()); } //方法二 增强for循环 for(Object o : list){ System.out.println(o); } //方法三 普通for循环 for(int i=0;i<=list.size()-1;i++){ System.out.println(list.get(i)); } }
-