1. 程式人生 > >java集合之列表:ArrayList、Vector、LinkedList

java集合之列表:ArrayList、Vector、LinkedList

sta pop arraylist 允許 dex nsa pack java jdk

  1 package com.jdk7.chapter4;
  2 
  3 import java.util.ArrayList;
  4 import java.util.LinkedList;
  5 import java.util.List;
  6 import java.util.ListIterator;
  7 import java.util.Stack;
  8 import java.util.Vector;
  9 /**
 10  * java中集合的形式一》列表(有序允許重復)
 11  * 列表的三種表現形式》ArrayList、Vector、LinkedList
12 * 其中Stack extends Vector 13 * 另: List的遍歷器(ListIterator)可以操作列表元素 14 * @author Administrator 15 * 16 */ 17 public class ListTest { 18 public static void init(List list){ 19 if(list!=null){ 20 list.add("aaa"); 21 list.add("bbb"); 22 list.add("ddd");
23 list.add("eee"); 24 } 25 } 26 27 public static void printList(List list){ 28 if(list!=null){ 29 for(int i=0;i<list.size();i++){ 30 System.out.print(list.get(i)+" "); 31 } 32 } 33 System.out.println();
34 } 35 36 public static void arrayList(){ 37 List arrayList = new ArrayList(); 38 init(arrayList); 39 printList(arrayList); 40 } 41 42 public static void vector(){ 43 List list = new Vector(); 44 init(list); 45 printList(list); 46 } 47 48 public static void linkedList(){ 49 List list = new LinkedList(); 50 init(list); 51 printList(list); 52 } 53 54 public static void main(String[] args) { 55 System.out.println("===============ArrayList集合=================="); 56 arrayList(); 57 System.out.println("===============Vector集合=================="); 58 vector(); 59 System.out.println("===============LinkedList集合=================="); 60 linkedList(); 61 System.out.println("===============操作ArrayList集合元素=================="); 62 List list = new ArrayList(); 63 list.add("1111"); 64 list.add("2222"); 65 list.add("3333"); 66 list.add(0, "eeee"); 67 list.indexOf("2222"); 68 printList(list); 69 System.out.println("================================="); 70 List list1 = new ArrayList(); 71 list1.addAll(list); 72 list1.add("bbbb"); 73 printList(list1); 74 System.out.println("數組list1包含數組list: "+list1.containsAll(list)); 75 list1.set(1, "vvvv"); 76 printList(list1); 77 System.out.println("===============List的遍歷器實現對集合元素的操作=================="); 78 ListIterator listIt = list.listIterator(); 79 System.out.print("正向遍歷結果: "); 80 while(listIt.hasNext()){ 81 System.out.print(listIt.next()+" "); 82 } 83 System.out.println(); 84 System.out.print("逆向遍歷結果: "); 85 while(listIt.hasPrevious()){ 86 System.out.print(listIt.previous()+" "); 87 } 88 System.out.println(); 89 //在遍歷器所在位置對數組元素進行操作,遍歷器位置通過ListIterator的next()和previous()進行變動 90 listIt.next(); 91 listIt.add("ffff"); 92 printList(list); 93 System.out.println("================================="); 94 listIt.next(); 95 listIt.remove(); 96 printList(list); 97 System.out.println("===============Vector類的子類Stack類操作集合元素=================="); 98 Stack myStack = new Stack(); 99 myStack.push("hhhh"); 100 myStack.push("eeee"); 101 myStack.push("llll"); 102 myStack.push("oooo"); 103 printList(myStack); 104 System.out.println("================堆棧尾部元素及堆棧所有元素================="); 105 System.out.println("堆棧尾部元素: "+myStack.peek()); 106 printList(myStack); 107 System.out.println("================彈出的堆棧尾部元素及堆棧所有元素================="); 108 System.out.println("彈出的堆棧尾部元素: "+myStack.pop()); 109 printList(myStack); 110 System.out.println("================操作LinkedList集合元素================="); 111 LinkedList linkedList = new LinkedList(); 112 linkedList.addAll(list); 113 printList(linkedList); 114 System.out.println("在集合頭部插入‘start‘"); 115 linkedList.addFirst("start"); 116 printList(linkedList); 117 System.out.println("在集合尾部插入‘end‘"); 118 linkedList.addLast("end"); 119 printList(linkedList); 120 System.out.println("刪除集合頭部元素‘start‘"); 121 linkedList.removeFirst(); 122 printList(linkedList); 123 System.out.println("刪除集合尾部元素‘end‘"); 124 linkedList.removeLast(); 125 printList(linkedList); 126 System.out.println("集合首尾插入元素‘aaaa‘"); 127 linkedList.addFirst("aaaa"); 128 linkedList.addLast("aaaa"); 129 printList(linkedList); 130 System.out.println("刪除元素‘aaaa‘"); 131 linkedList.remove("aaaa"); 132 printList(linkedList); 133 } 134 } 135 136 137 執行結果為: 138 ===============ArrayList集合================== 139 aaa bbb ddd eee 140 ===============Vector集合================== 141 aaa bbb ddd eee 142 ===============LinkedList集合================== 143 aaa bbb ddd eee 144 ===============操作ArrayList集合元素================== 145 eeee 1111 2222 3333 146 ================================= 147 eeee 1111 2222 3333 bbbb 148 數組list1包含數組list: true 149 eeee vvvv 2222 3333 bbbb 150 ===============List的遍歷器實現對集合元素的操作================== 151 正向遍歷結果: eeee 1111 2222 3333 152 逆向遍歷結果: 3333 2222 1111 eeee 153 eeee ffff 1111 2222 3333 154 ================================= 155 eeee ffff 2222 3333 156 ===============Vector類的子類Stack類操作集合元素================== 157 hhhh eeee llll oooo 158 ================堆棧尾部元素及堆棧所有元素================= 159 堆棧尾部元素: oooo 160 hhhh eeee llll oooo 161 ================彈出的堆棧尾部元素及堆棧所有元素================= 162 彈出的堆棧尾部元素: oooo 163 hhhh eeee llll 164 ================操作LinkedList集合元素================= 165 eeee ffff 2222 3333 166 在集合頭部插入‘start‘ 167 start eeee ffff 2222 3333 168 在集合尾部插入‘end‘ 169 start eeee ffff 2222 3333 end 170 刪除集合頭部元素‘start‘ 171 eeee ffff 2222 3333 end 172 刪除集合尾部元素‘end‘ 173 eeee ffff 2222 3333 174 集合首尾插入元素‘aaaa‘ 175 aaaa eeee ffff 2222 3333 aaaa 176 刪除元素‘aaaa‘ 177 eeee ffff 2222 3333 aaaa

java集合之列表:ArrayList、Vector、LinkedList