List 集合概述
- 有序集合(也称为序列 )。 该界面的用户可以精确控制列表中每个元素的插入位置。 用户可以通过整数索引(列表中的位置)访问元素,并搜索列表中的元素。
- 与Set集合不同,列表通常有重复的元素。
package com.itheima_01;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
/*
List集合特点
有序:存储和取出的元素一致
可重复:存储的元素可以重复
*/
public class ListDemo {
public static void main(String[] args) {
//创建集合对象
List<String> l = new ArrayList<String>();
//添加元素
//有序:存储和取出的元素一致
l.add("regardless 不注意的");
l.add("essential 基本的");
l.add("emergency 紧急情况");
//可重复:存储的元素可以重复
l.add("regardless 不注意的");
//输出元素
System.out.println(l);
//迭代器的方式遍历
Iterator<String> it = l.iterator();
while(it.hasNext()){
String s = it.next();
System.out.println(s);
}
}
}
List集合特有的方法
|
将指定的元素插入此列表中的指定位置(可选操作)。 |
|
删除该列表中指定位置的元素(可选操作)。 |
|
用指定的元素(可选操作)替换此列表中指定位置的元素。 |
|
返回此列表中指定位置的元素。 |
package com.itheima_01;
import java.util.ArrayList;
import java.util.List;
/*
List集合特有的方法
void add(int index, E element)
将指定的元素插入此列表中的指定位置(可选操作)。
E remove(int index)
删除该列表中指定位置的元素(可选操作)。
E set(int index, E element)
用指定的元素(可选操作)替换此列表中指定位置的元素。
E get(int index)
返回此列表中指定位置的元素。
*/
public class ListDemo02 {
public static void main(String[] args) {
//创建集合对象
List<String> l = new ArrayList<String>();
//添加元素
l.add("regardless 不注意的");
l.add("essential 基本的");
l.add("emergency 紧急情况");
//输出集合元素
System.out.println(l);
//void add(int index, E element)
// 将指定的元素插入此列表中的指定位置(可选操作)。
l.add(1,"resistance 阻力");
// E remove(int index)
// 删除该列表中指定位置的元素(可选操作)。
System.out.println(l.remove(1));
// E set(int index, E element)
// 用指定的元素(可选操作)替换此列表中指定位置的元素。
System.out.println(l.set(0,"已被修改"));
//E get(int index)
// 返回此列表中指定位置的元素。
//System.out.println(l.get(1));
//用for循环改进
for(int i=0; i<l.size(); i++){
String s = l.get(i);
System.out.println(s);
}
}
}
List常用集合子类
- ArrayList:底层数据结构是数组,查询快,增删慢
- LinkedList:底层数据结构是链表,查询慢,增删快
package com.itheima_02;
import sun.awt.image.ImageWatched;
import javax.crypto.spec.PSource;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.LinkedList;
/*
List常用集合子类
ArrayList:底层数据结构是数组,查询快,增删慢
LinkedList:底层数据结构是链表,查询慢,增删快
*/
public class ListDemo {
public static void main(String[] args) {
//创建集合对象 ArrayList:底层数据结构是数组,查询快,增删慢
ArrayList<String> a = new ArrayList<String>();
//添加元素
a.add("regardless 不注意的");
a.add("essential 基本的");
a.add("emergency 紧急情况");
//遍历
//增强for
for(String s : a){
System.out.println(s);
}
System.out.println("____________");
//普通for
for(int i=0;i<a.size(); i++){
String s = a.get(i);
System.out.println(s);
}
System.out.println("____________");
//迭代器
Iterator<String> it = a.iterator();
while (it.hasNext()){
String s1 = it.next();
System.out.println(s1);
}
System.out.println("+++++++++++++++++");
//LinkedList:底层数据结构是链表,查询慢,增删快
LinkedList<String> LL = new LinkedList<String>();
//添加元素
LL.add("regardless 不注意的");
LL.add("essential 基本的");
LL.add("emergency 紧急情况");
//增强for
for (String s : LL ){
System.out.println(s);
}
}
}