List系列集合特点
- ArrayList,LinekList:有序,可重复,有索引
- 有序:存储和取出的元素顺序一致
- 有索引:可以通过索引操作元素
- 可重复:存储的元素可以重复
常见操作
public static void main(String[] args) {
List<String> list=new ArrayList<>();
list.add("java");
list.add("Java");
list.add("MySQL");
list.add("MySQL");
System.out.println(list);//[java, Java, MySQL, MySQL]
//在某个索引位置插入元素
list.add(2,"HTML");
System.out.println(list);//[java, Java, HTML, MySQL, MySQL]
//根据缩影删除元素,返回被删除的元素
System.out.println(list.remove(2));//HTML
System.out.println(list);//[java, Java, MySQL, MySQL]
//根据索引获取元素:public E get(int index):返回集合中指定位置的元素
System.out.println(list.get(2));//MySQL
//修改索引位置处的元素:public E set(int index,E element)
//返回修改前的数据
System.out.println(list.set(1,"高斯林"));//Java
System.out.println(list);//[java, 高斯林, MySQL, MySQL]
}
List集合的遍历方式有几种?
①携带其
②增强for循环
③Lambda表达式
④for循环(因为List集合存在索引)
public static void main(String[] args) {
List<String> list=new ArrayList<>();
list.add("java");
list.add("Java");
list.add("MySQL");
list.add("MySQL");
//1.for循环
System.out.println("----------------------");
for(int i=0;i<list.size();i++){
String ele=list.get(i);
System.out.println(ele);
}
//2.迭代器
System.out.println("----------------------");
Iterator<String> it=list.iterator();
while (it.hasNext()){
String ele= it.next();
System.out.println(ele);
}
//3.foreach
System.out.println("----------------------");
for (String ele : list) {
System.out.println(ele);
}
//4.JDK1.8开始之后的Lambda表达式
System.out.println("----------------------");
list.forEach(s-> System.out.println(s));
}