List集合
- 有序的集合,存储元素的顺序和取出元素的顺序是一致的
- 有索引,包含了一些索引的方法
- 允许存储重复的元素
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)
:用指定元素替换集合中指定位置的元素,返回值的更新前的元素。
public static void main(String[] args) {
//创建一个List集合对象,多态
List<String> list=new ArrayList<>();
list.add("范璟琛");
list.add("ltf");
//将指定的元素,添加到该集合中的指定位置上。
list.add(0,"lwh");
System.out.println(list);
//返回集合中指定位置的元素。
String s=list.get(0);
System.out.println(s);
// 移除列表中指定位置的元素。
list.remove(0);
System.out.println(list);
//用指定元素替换集合中指定位置的元素。
list.set(0,"范璟琛很帅");
System.out.println(list);
}
- 运行结果:
[lwh, 范璟琛, ltf]
lwh
[范璟琛, ltf]
[范璟琛很帅, ltf]
LinkedList
- 是List的实现类
- 底层是链表结构,查询慢,增删快。
- 里面包含了大量操作的首尾元素的方法
LinkedList中的方法(特有)
public void addFirst(E e)
:将指定元素插入此列表的开头。public void addLast(E e)
:将指定元素添加到此列表的结尾。public E getFirst()
:返回此列表的第一个元素。public E getLast()
:返回此列表的最后一个元素。public E removeFirst()
:移除并返回此列表的第一个元素。public E removeLast()
:移除并返回此列表的最后一个元素。public E pop()
:从此列表所表示的堆栈处弹出一个元素。public void push(E e)
:将元素推入此列表所表示的堆栈。public boolean isEmpty()
:如果列表不包含元素,则返回true。
public static void main(String[] args) {
LinkedList<Integer> ll=new LinkedList<>();
for(int i=0;i<10;i++){
ll.add(i);
}
System.out.println(ll);
//将指定元素插入此列表的开头。
ll.addFirst(11);
System.out.println(ll);
//将指定元素添加到此列表的结尾。
ll.addLast(22);
System.out.println(ll);
//返回此列表的第一个元素。
Integer first=ll.getFirst();
System.out.println(first);
//返回此列表的最后一个元素。
Integer last = ll.getLast();
System.out.println(last);
//移除并返回此列表的第一个元素。
Integer rfirst = ll.removeFirst();
System.out.println(rfirst);
//移除并返回此列表的最后一个元素。
Integer rlast = ll.removeLast();
System.out.println(rlast);
System.out.println(ll);
//从此列表所表示的堆栈处弹出一个元素。和addFirst()作用一样
ll.push(33);
//将元素推入此列表所表示的堆栈。和removeFirst()作用一样
ll.pop();
System.out.println(ll);
//如果列表不包含元素,则返回true。如果有NoSuchElementException错误。要用isEmpty()。
if(!ll.isEmpty()){
ll.removeFirst();
System.out.println(ll);
}
}
运行结果:
[11, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
[11, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 22]
11
22
11
22
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
[1, 2, 3, 4, 5, 6, 7, 8, 9]