目录
add(int index, E element)或者add(E element):
java.util.List 接口
继承自 Collection 接口,实现了 List 接口的对象称为List集合。
List接口特点:
1. 它是一个元素存取有序的集合。例如,元素存入的顺序是a,b,c,则集合中,元素的存储顺序就是a,b,c。
2. 它是一个带有索引的集合,通过索引就可以精确的操作集合中的元素。
3. 集合中可以有重复的元素,通过元素的equals方法,来比较是否为重复的元素。
List接口中常用方法
public void add(int index, E element) : 将指定的元素,添加到该集合中的指定位置上。
public E get(int index) :返回集合中指定位置的元素。
public E remove(int index) : 移除列表中指定位置的元素, 返回的是被移除的元素。
public E set(int index, E element) :用指定元素替换集合中指定位置的元素,返回值的更新前的元素。
add(int index, E element)或者add(E element):
@Test
public void addTest(){
List coll = new ArrayList();
coll.add("1");
coll.add(1,2);
coll.add(true);
System.out.println(coll.toString());// [1, 2, true]
coll.add(3,false);
System.out.println(coll.toString());// [1, 2, true, false]
}
remove(int index):
@Test
public void removeTest(){
List coll = new ArrayList();
coll.add("1");
coll.add(3);
coll.add(true);
coll.remove(2);
System.out.println(coll.toString());// [1, 3]
}
set(int index, E element) :
@Test
public void setTest(){
List coll = new ArrayList();
coll.add("1");
coll.add(2);
coll.add(true);
coll.set(2,false);
System.out.println(coll.toString());// [1, 2, false]
}
get(int index) :
@Test
public void getTest(){
List coll = new ArrayList();
coll.add("1");
coll.add(2);
coll.add(true);
System.out.println(coll.get(2));// true
}
Iterator接口
java.util.Iterator<E e>主要用于迭代访问(即遍历) Collection 中的元素,因此 Iterator 对象也被称为迭代器。Iterator迭代器,是一个接口,我们无法直接使用。Collection接口中有一个方法,叫iterator(),这个方法返回的就是迭代器的实现类对象,不能对集合中的元素进行增删操作。
Iterator接口的常用方法如下:
public boolean hasNext() :如果仍有元素可以迭代,则返回 true。循环结束的条件,hasNext方法返回false。
public E next() :返回迭代的下一个元素。(Iterator<E>接口也是有泛型的,迭代器的泛型跟着集合走,集合是什么泛型,迭代器就是什么泛型)
迭代器的使用步骤(重点):
1.使用集合中的方法iterator()获取迭代器的实现类对象,使用Iterator接口接收(多态)
2.使用Iterator接口中的方法hasNext判断还有没有下一个元素
3.使用Iterator接口中的方法next取出集合中的下一个元素
@Test
public void iteratorTest {
List<String> list= new ArrayList<String>();
// 添加元素到集合
list.add("a");
list.add("b");
list.add("c");
//遍历
//使用迭代器 遍历 每个集合对象都有自己的迭代器
Iterator<String> it = list.iterator();
// 泛型指的是 迭代出 元素的数据类型
while(it.hasNext()){ //判断是否有迭代元素
String s = it.next();//获取迭代出的元素
System.out.println(s);
}
}
// 运行结果:a,b,c
增强for
增强for循环(也称for each循环),专门用来遍历数组和集合的。它的内部原理其实是个Iterator迭代器,所以在遍历的过程中,不能对集合中的元素进行增删操作。
@Test
public void foreachTest {
List<String> list= new ArrayList<String>();
// 添加元素到集合
list.add("a");
list.add("b");
list.add("c");
//增强for循环
for (String s : list) {
System.out.println(s);
}
}
// 运行结果:a,b,c