Git自學(2)-- Git安裝後首次配置與第一次使用Git和Github管理自己的程式碼(超詳細純小白圖文教程)
阿新 • • 發佈:2021-07-17
1. List集合的概述和特點【記憶】
-
List集合的概述
-
有序集合,這裡的有序指的是存取順序
-
使用者可以精確控制列表中每個元素的插入位置,使用者可以通過整數索引訪問元素,並搜尋列表中的元素
-
與Set集合不同,列表通常允許重複的元素
-
-
List集合的特點
-
存取有序
-
可以重複
-
有索引
import java.util.ArrayList; import java.util.Iterator; import java.util.List; public class MyListDemo1 { public static void main(String[] args) {list集合示例//多型 List<String> list = new ArrayList<>(); list.add("a"); list.add("b"); list.add("c"); list.add("d"); Iterator<String> it = list.iterator(); while(it.hasNext()){ String s = it.next(); System.out.println(s); } System.out.println("---------------------"); for (String s : list) { System.out.println(s); } } }
2. List集合的特有方法【應用】
方法名 | 描述 |
---|---|
void add(int index,E element) | 在此集合中的指定位置插入指定的元素 |
E remove(int index) | 刪除指定索引處的元素,返回被刪除的元素 |
E set(int index,E element) | 修改指定索引處的元素,返回被修改的元素 |
E get(int index) |
返回指定索引處的元素 |
import java.util.ArrayList; import java.util.List; public class MyListDemo2 { public static void main(String[] args) { List<String> list = new ArrayList<>(); list.add("aaa"); list.add("bbb"); list.add("ccc"); //method1(list); //method2(list); //method3(list); //method4(list); } private static void method4(List<String> list) { // E get(int index) 返回指定索引處的元素 String s = list.get(0); System.out.println(s); } private static void method3(List<String> list) { // E set(int index,E element) 修改指定索引處的元素,返回被修改的元素 //被替換的那個元素,在集合中就不存在了. String result = list.set(0, "qqq"); System.out.println(result); System.out.println(list); } private static void method2(List<String> list) { // E remove(int index) 刪除指定索引處的元素,返回被刪除的元素 //在List集合中有兩個刪除的方法 //第一個 刪除指定的元素,返回值表示當前元素是否刪除成功 //第二個 刪除指定索引的元素,返回值表示實際刪除的元素 String s = list.remove(0); System.out.println(s); System.out.println(list); } private static void method1(List<String> list) { // void add(int index,E element) 在此集合中的指定位置插入指定的元素 //原來位置上的元素往後挪一個索引. list.add(0,"qqq"); System.out.println(list); } }List集合的特有方法示例
插曲:常見的資料結構 .1資料結構之棧和佇列【記憶】 - 棧結構 先進後出 - 佇列結構 先進先出 .2資料結構之陣列和連結串列【記憶】 - 陣列結構 查詢快、增刪慢 - 連結串列結構 查詢慢、增刪快
3.List集合子類的特點【記憶】
-
ArrayList集合
底層是陣列結構實現,查詢快、增刪慢
-
LinkedList集合
3.1ArrayList集合
import java.util.Iterator; import java.util.LinkedList; public class MyLinkedListDemo3 { public static void main(String[] args) { LinkedList<String> list = new LinkedList<>(); list.add("aaa"); list.add("bbb"); list.add("ccc"); for (int i = 0; i < list.size(); i++) { System.out.println(list.get(i)); } System.out.println("-------------------------"); Iterator<String> it = list.iterator(); while(it.hasNext()){ String s = it.next(); System.out.println(s); } System.out.println("--------------------------"); for (String s : list) { System.out.println(s); } } }LinkedList三種遍歷
-
特有方法
方法名 說明 public void addFirst(E e) 在該列表開頭插入指定的元素 public void addLast(E e) 將指定的元素追加到此列表的末尾 public E getFirst() 返回此列表中的第一個元素 public E getLast() 返回此列表中的最後一個元素 public E removeFirst() 從此列表中刪除並返回第一個元素 public E removeLast() 從此列表中刪除並返回最後一個元素
import java.util.LinkedList; public class MyLinkedListDemo4 { public static void main(String[] args) { LinkedList<String> list = new LinkedList<>(); list.add("aaa"); list.add("bbb"); list.add("ccc"); // public void addFirst(E e) 在該列表開頭插入指定的元素 //method1(list); // public void addLast(E e) 將指定的元素追加到此列表的末尾 //method2(list); // public E getFirst() 返回此列表中的第一個元素 // public E getLast() 返回此列表中的最後一個元素 //method3(list); // public E removeFirst() 從此列表中刪除並返回第一個元素 // public E removeLast() 從此列表中刪除並返回最後一個元素 //method4(list); } private static void method4(LinkedList<String> list) { String first = list.removeFirst(); System.out.println(first); String last = list.removeLast(); System.out.println(last); System.out.println(list); } private static void method3(LinkedList<String> list) { String first = list.getFirst(); String last = list.getLast(); System.out.println(first); System.out.println(last); } private static void method2(LinkedList<String> list) { list.addLast("www"); System.out.println(list); } private static void method1(LinkedList<String> list) { list.addFirst("qqq"); System.out.println(list); } }特有方法示例