import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.ListIterator;
public class Demo01 {
public static void main(String[] args) {
//List子接口的特点:
//1.有序
//2.有下标
//3.可重复
//创建集合对象
List list = new ArrayList<>();
//1.添加元素
list.add("苹果");
list.add("华为");
list.add(0,"小米");
System.out.println("元素个数:"+list.size());//元素个数:3
System.out.println(list);//[小米, 苹果, 华为]
//2.删除元素
//list.remove("小米");
list.remove(0);
System.out.println("删除之后元素个数:"+list.size());//删除之后元素个数:2
System.out.println(list);//[苹果, 华为]
//3.遍历元素
//1.使用for遍历
for (int i = 0; i <list.size() ; i++) {
System.out.println(list.get(i));
}
//2.增强for
for (Object object:
list) {
System.out.println(object);
}
//3.使用迭代器
Iterator iterator = list.iterator();
while (iterator.hasNext()) {
System.out.println(iterator.next());
}
//4.使用列表迭代器:listIterator();
//ListIterator和Iterator的区别:可以向前或向后遍历,添加、删除、修改元素
ListIterator listIterator = list.listIterator();
//从前往后迭代
while (listIterator.hasNext()){
System.out.println(listIterator.nextIndex());
System.out.println(listIterator.next());
}
//从前往后迭代时,指针已经移向最后,可从后往前迭代
//从后往前迭代
while (listIterator.hasPrevious()){
System.out.println(listIterator.previousIndex());
System.out.println(listIterator.previous());
}
//4.判断
System.out.println(list.contains("华为"));//true
System.out.println(list.isEmpty());//false
//5.获取位置
System.out.println(list.indexOf("华为"));//1
}
}