适合vue做的网站类型,电子商务网站规划的内容,200网址大全,织梦 网站源码集合-Collection家族-List接口
List接口
1 特点 有序且可重复#xff08;因为List接口中添加了许多针对下标操作的方法#xff09; 2 四种实现类的数据类型与特点 a. ArrayList 数据结构#xff1a;一维数组 特点#xff1a;存储数据 b. LinkedList 数…集合-Collection家族-List接口
List接口
1 特点 有序且可重复因为List接口中添加了许多针对下标操作的方法 2 四种实现类的数据类型与特点 a. ArrayList 数据结构一维数组 特点存储数据 b. LinkedList 数据结构双向列表 特点队列模式、栈模式 c. Vector 数据结构一维数组 特点线程安全 d. Stack 继承关系class Stack extends Vector 特点栈模式 3 ArrayList实现类
3.1 ArrayList的使用
package com.qf.arraylist_class;import java.sql.Array;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.Iterator;
import java.util.List;
import java.util.ListIterator;public class Test01 {/*** 知识点ArrayList的使用*/public static void main(String[] args) {ArrayListString list new ArrayList();//添加数据list.add(小希);list.add(小空);list.add(小丽);list.add(小光);list.add(小步);//设置指定下标上的元素list.set(1, 小康);//获取指定下标上的元素String str list.get(1);System.out.println(获取指定下标上的元素 str);//侯小康//获取元素个数int size list.size();System.out.println(获取元素个数 size);//5//在指定下标上添加元素list.add(2, 小飞);ArrayListString newList1 new ArrayList();Collections.addAll(newList1, aaa,bbb,ccc,ccc);//利用集合工具类Collections批量添加元素list.addAll(newList1);//将newList1中所有的元素都添加到list集合里末尾的位置ArrayListString newList2 new ArrayList();Collections.addAll(newList2, xxx,xxx,yyy,yyy,zzz,zzz);//利用集合工具类Collections批量添加元素list.addAll(3, newList2);//将newList2中所有的元素都添加到list集合里指定下标的位置//清空集合里所有的元素//list.clear();System.out.println(判断集合中是否包含指定元素 list.contains(小康));//trueSystem.out.println(判断集合中是否包含指定集合 list.containsAll(newList1));//trueSystem.out.println(获取元素在集合中第一次出现的下标 list.indexOf(ccc));//12System.out.println(获取元素在集合中最后一次出现的下标 list.lastIndexOf(ccc));//13//没有-true有-falseSystem.out.println(判断集合里是否没有元素 list.isEmpty());//falselist.remove(9);//通过下标删除元素list.remove(小丽);//通过数据删除元素list.removeAll(newList1);//将list中有newList1的元素全部删除(去除交集)list.retainAll(newList2);//将list中有newList2的元素全部保留(保留交集)ListString subList list.subList(1, 4);//从开始下标处(包含)截取到结束下标处(排他)的元素返回新的集合//将集合转换为数组Object[] array1 subList.toArray();System.out.println(Arrays.toString(array1));//[xxx, yyy, yyy]//将集合转换为指定类型的数组String[] array2 new String[3];subList.toArray(array2);System.out.println(Arrays.toString(array2));//[xxx, yyy, yyy]System.out.println(-----------------------------------------);//遍历集合 -- for循环for (int i 0; i list.size(); i) {System.out.println(list.get(i));}System.out.println(-----------------------------------------);//遍历集合 -- foreachfor (String element : list) {System.out.println(element);}System.out.println(-----------------------------------------);//遍历集合 -- IteratorIteratorString it list.iterator();while(it.hasNext()){//判断是否有可迭代的元素String next it.next();//获取下一个元素System.out.println(next);}System.out.println(-----------------------------------------);//遍历集合 -- ListIteratorListIteratorString listIterator list.listIterator();while(listIterator.hasNext()){//判断是否有可迭代的元素String next listIterator.next();//获取下一个元素System.out.println(next);}}
}
4 LinkedList实现类
4.1 LinkedList的使用(同ArrayList-略)
4.2 LinkedList独有的方法
package com.qf.linkedlist_class;import java.util.LinkedList;public class Test02 {/*** 知识点LinkedList独有的方法*/public static void main(String[] args) {LinkedListString list new LinkedList();list.add(小希1);list.add(小希2);list.add(小希3);list.add(abc);list.add(abc);list.add(AAA);list.add(abc);list.add(abc);//添加到头部list.addFirst(aaa);list.offerFirst(bbb);list.push(ccc);//添加到末尾list.addLast(xxx);list.offer(yyy);list.offerLast(zzz);System.out.println(获取第一个元素 list.element());System.out.println(获取第一个元素 list.getFirst());System.out.println(获取第一个元素 list.peek());System.out.println(获取第一个元素 list.peekFirst());System.out.println(获取第一个元素 list.pop());System.out.println(获取最后一个元素 list.getLast());System.out.println(获取最后一个元素 list.peekLast());//删除第一个元素list.poll();list.pollFirst();list.removeFirst();//删除最后一个元素list.pollLast();list.removeLast();//删除第一次出现的元素list.removeFirstOccurrence(abc);//删除最后一次出现的元素list.removeLastOccurrence(abc);//倒序遍历
// IteratorString descendingIterator list.descendingIterator();
// while(descendingIterator.hasNext()){
// String next descendingIterator.next();
// System.out.println(next);
// }for (String element : list) {System.out.println(element);}}
}4.3 LinkedList实现队列模式
package com.qf.linkedlist_class;import java.util.LinkedList;public class Test03 {/*** 知识点LinkedList实现队列模式* * 注意队列模式 - 先进先出*/public static void main(String[] args) {LinkedListString list new LinkedList();list.add(aaa);list.add(bbb);list.add(ccc);list.add(ddd);list.add(eee);while(!list.isEmpty()){//String element list.pollFirst();String element list.removeFirst();System.out.println(element);}System.out.println(集合的元素个数为 list.size());//0}
}
4.4 LinkedList实现栈模式
package com.qf.linkedlist_class;import java.util.LinkedList;public class Test04 {/*** 知识点LinkedList实现栈模式* * 注意栈模式 - 先进后出/后进先出*/public static void main(String[] args) {LinkedListString list new LinkedList();list.add(aaa);list.add(bbb);list.add(ccc);list.add(ddd);list.add(eee);while(!list.isEmpty()){String element list.removeLast();System.out.println(element);}System.out.println(集合的元素个数为 list.size());//0}
}