泛型類是引用型別,是堆物件。
優點:不會強行堆值型別進行裝箱和拆箱,或對引用型別進行向下強制型別轉換,所以效能能得到了提高。
list可儲存任意指定型別的集合
優點:與arraylist型別的集合相比,arraylist(在新增string型別時,string型別會隱式強制轉換為object型別。同樣,如果從該列表中檢索string型別物件,它必須在執行時從object型別引用強制轉換為string型別引用。這會造成編譯時缺少型別安全,引發錯誤)。相反,使用list(t的型別被設定為string型別),會使所有新增和查詢方法使用string型別引用。這允許在編譯時(而非執行時)指定和檢查集合中元素的型別。
list的常用屬性:
屬性功能說明
capacity
獲取或設定list 中可包含的元素個數
count
獲取list中實際包含的元素個數
list的常用方法:
方法功能說明
add()
將元素新增到list的結尾處
insert()
將元素新增到list的指定索引處
remove()
移除list中指定的元素
removeat()
移除list中指定索引處的元素
clear()
清除list中所有的元素
sort()
對list中的元素排序
reverse()
將list的元素順序反轉
toarray()
將list中的元素複製到陣列中
dictionary的常見屬性:
屬性說明
keys
獲取包含dictionary中所有鍵的icollectin(可以遍歷該屬性訪問集合中所有鍵)
values
獲取包含dictionary中所有鍵的icollectin(可以遍歷該屬性訪問集合中所有值)
count
獲取dictionary中鍵/值對的數目
dictionary的常見方法:
方法說明
add(object key,object value)
將帶有指定鍵和值的元素新增到dictionary中
romove(object key)
從dictionary中移除帶有指定鍵的元素
clear()
移除dictionary中所有的元素
containskey(object key)
確定dictionary是否包含指定鍵
containsvalue(object value)
確定dictionary是否包含指定值
物件導向程式設計VS泛型程式設計
物件導向程式設計vs泛型程式設計 1 物件導向 oop是對data operation的封裝,是對同類事物的抽象,跟結構化程式設計相比它更接近自然語言。繼承使得oo具有了更強的表達能力,進一步地接近了自然語言的屬性。而多型則是oo的最為巧妙和強大的地方,它催生了一系列的設計模式,而設計模式的應用體現...
物件導向程式設計與泛型程式設計
第15章 物件導向程式設計 物件導向程式設計基於資料抽象 繼承 動態繫結三個基本概念。在c 中,用類進行資料抽象,用類派生從乙個類繼承另乙個類 派生類繼承基類的成員。動態繫結使編譯器能夠在執行時決定是使用基類中定義的函式還是派生類中定義的函式。物件導向的三大特徵 封裝 繼承 多型 15.1 物件導向...
Java物件導向 泛型
概念 泛型可以解決資料型別的安全問題,主要原理是在類宣告的時候通過乙個標識表示類中某個屬性的型別或者是某個方法的返回值及引數型別。格式 訪問許可權 class 類名稱 泛型,泛型。屬性方法 示例 public class gnericity publict geti 物件的建立 類名稱 具體型別 物...