1:list的子類(掌握)
(1)list的子類特點
arraylist:
底層資料結構是陣列,查詢快,增刪慢
執行緒不安全,效率高
vector:
底層資料結構是陣列,查詢快,增刪慢
執行緒安全,效率低
linkedlist:
底層資料結構是鍊錶,查詢慢,增刪快
執行緒不安全,效率高
(2)arraylist
a:沒有特有功能需要學習
b:案例
a:arraylist儲存字串並遍歷
b:arraylist儲存自定義物件並遍歷
(3)vector
a:有特有功能
a:新增
public void addelement(e obj) – add()
b:獲取
public e elementat(int index) – get()
public enumeration elements() – iterator()
b:案例
a:vector儲存字串並遍歷
b:vector儲存自定義物件並遍歷
(4)linkedlist
a:有特有功能
a:新增
addfirst()
addlast()
b:刪除
removefirst()
removelast()
c:獲取
getfirst()
getlast()
(5)案例:
a:去除集合中的多個字串的重複元素
如果字串的內容相同,即為重複元素
b:去除集合中的多個自定義物件的重複元素
如果自定義物件的成員變數值都相同,即為重複元素
c:用linkedlist模擬乙個棧資料結構的集合類,並測試。
你要定義乙個集合類,只不過內部可以使用linkedlist來實現。
2:泛型(掌握)
(1)泛型概述
是一種把明確型別的工作推遲到建立物件或者呼叫方法的時候才去明確的特殊的型別。
(2)格式:
《資料型別》
注意:該資料型別只能是引用型別。
(3)好處:
a:把執行時期的問題提前到了編譯期間
b:避免了強制型別轉換
c:優化了程式設計,解決了黃色警告線問題,讓程式更安全
(4)泛型的前世今生
a:泛型的由來
object型別作為任意型別的時候,在向下轉型的時候,會隱含乙個轉型問題
b:泛型類
c:泛型方法
d:泛型介面
e:泛型高階萬用字元
?? extends e
? super e
(5)我們在**使用呢?
一般是在集合中使用。
3:增強for迴圈(掌握)
(1)是for迴圈的一種
(2)格式:
for(元素的資料型別 變數名 : 陣列或者collection集合的物件)
(3)好處:
簡化了陣列和集合的遍歷
(4)弊端
增強for迴圈的目標不能為null。建議在使用前,先判斷是否為null。
4:靜態匯入(了解)
(1)可以匯入到方法級別的匯入
(2)格式:
import static 包名…類名.方法名;
(3)注意事項:
a:方法必須是靜態的
b:如果多個類下有同名的方法,就不好區分了,還得加上字首。
所以一般我們並不使用靜態匯入,但是一定要能夠看懂。
5:可變引數(掌握)
(1)如果我們在寫方法的時候,引數個數不明確,就應該定義可變引數。
(2)格式:
修飾符 返回值型別 方法名(資料型別… 變數) {}
注意:a:該變數其實是乙個陣列名
b:如果乙個方法有多個引數,並且有可變引數,可變引數必須在最後
(3)arrays工具類的乙個方法
aslist()把陣列轉成集合。
注意:這個集合的長度不能改變。
集合儲存元素,加入泛型,並可以使用增強for遍歷。
學習筆記15
響應式 media 不同的大小 執行不行的css 寫上 float left 預設不會屏佔百分百,寫上多少就是多少 但是無法滿足全屏鋪滿 min left 900x 的意思是 當寬度小於這個值時候 底部出現滾動條 position absolute 這麼寫 會鋪滿螢幕 只有加上 left right...
學習筆記 15
簡單來說,對於 abac 我們判斷乙個使用者是否能訪問某項資源,是對其很多不同屬性的計算而得到的。訪問控制 訪問控制是資料安全的乙個基本組成部分,它規定了哪些人可以訪問和使用公司資訊與資源。通過身份驗證和授權,訪問控制策略可以確保使用者的真實身份,並且擁有訪問公司資料的相應許可權。訪問控制還適用於限...
Java學習筆記 15 氣泡排序 插入排序
15.氣泡排序 插入排序 1 氣泡排序 原理 將列表中的兩個元素進行比較,將較大或者較小的元素進行交換到頂部,該過程重複執行,直到所有元素都被排序。外層迴圈控制比較多少輪 for int i 0 i array.length 1 i 氣泡排序法記憶口訣 n個數字來排隊 兩兩相比小靠前 外層迴圈n 1...