Java 數(shù)據(jù)結(jié)構(gòu)
Java語言的安全性較高,那么大家知道Java 數(shù)據(jù)結(jié)構(gòu)是怎樣的呢?下面一起來看看!
Java工具包提供了強大的數(shù)據(jù)結(jié)構(gòu)。在Java中的數(shù)據(jù)結(jié)構(gòu)主要包括以下幾種接口和類:
枚舉(Enumeration)
位集合(BitSet)
向量(Vector)
棧(Stack)
字典(Dictionary)
哈希表(Hashtable)
屬性(Properties)
以上這些類是傳統(tǒng)遺留的,在Java2中引入了一種新的框架-集合框架(Collection),我們后面再討論。
枚舉(Enumeration)
枚舉(Enumeration)接口雖然它本身不屬于數(shù)據(jù)結(jié)構(gòu),但它在其他數(shù)據(jù)結(jié)構(gòu)的范疇里應(yīng)用很廣。 枚舉(The Enumeration)接口定義了一種從數(shù)據(jù)結(jié)構(gòu)中取回連續(xù)元素的方式。
例如,枚舉定義了一個叫nextElement 的方法,該方法用來得到一個包含多元素的數(shù)據(jù)結(jié)構(gòu)的下一個元素。
關(guān)于枚舉接口的更多信息,請參見枚舉(Enumeration)。
位集合(BitSet)
位集合類實現(xiàn)了一組可以單獨設(shè)置和清除的位或標(biāo)志。
該類在處理一組布爾值的時候非常有用,你只需要給每個值賦值一"位",然后對位進行適當(dāng)?shù)脑O(shè)置或清除,就可以對布爾值進行操作了。
關(guān)于該類的更多信息,請參見位集合(BitSet)。
向量(Vector)
向量(Vector)類和傳統(tǒng)數(shù)組非常相似,但是Vector的大小能根據(jù)需要動態(tài)的變化。
和數(shù)組一樣,Vector對象的元素也能通過索引訪問。
使用Vector類最主要的好處就是在創(chuàng)建對象的時候不必給對象指定大小,它的大小會根據(jù)需要動態(tài)的變化。
關(guān)于該類的更多信息,請參見向量(Vector)
棧(Stack)
棧(Stack)實現(xiàn)了一個后進先出(LIFO)的數(shù)據(jù)結(jié)構(gòu)。
你可以把棧理解為對象的垂直分布的棧,當(dāng)你添加一個新元素時,就將新元素放在其他元素的頂部。
當(dāng)你從棧中取元素的時候,就從棧頂取一個元素。換句話說,最后進棧的元素最先被取出。
關(guān)于該類的更多信息,請參見棧(Stack)。
字典(Dictionary)
字典(Dictionary) 類是一個抽象類,它定義了鍵映射到值的數(shù)據(jù)結(jié)構(gòu)。
當(dāng)你想要通過特定的鍵而不是整數(shù)索引來訪問數(shù)據(jù)的時候,這時候應(yīng)該使用Dictionary。
由于Dictionary類是抽象類,所以它只提供了鍵映射到值的數(shù)據(jù)結(jié)構(gòu),而沒有提供特定的實現(xiàn)。
關(guān)于該類的更多信息,請參見字典( Dictionary)。
哈希表(Hashtable)
Hashtable類提供了一種在用戶定義鍵結(jié)構(gòu)的基礎(chǔ)上來組織數(shù)據(jù)的手段。
例如,在地址列表的哈希表中,你可以根據(jù)郵政編碼作為鍵來存儲和排序數(shù)據(jù),而不是通過人名。
哈希表鍵的具體含義完全取決于哈希表的使用情景和它包含的數(shù)據(jù)。
關(guān)于該類的更多信息,請參見哈希表(HashTable)。
屬性(Properties)
Properties 繼承于 Hashtable.Properties 類表示了一個持久的屬性集.屬性列表中每個鍵及其對應(yīng)值都是一個字符串。
Properties 類被許多Java類使用。例如,在獲取環(huán)境變量時它就作為System.getProperties()方法的返回值。
關(guān)于該類的更多信息,請參見屬性(Properties)。
【Java 數(shù)據(jù)結(jié)構(gòu)】相關(guān)文章:
Java常用數(shù)據(jù)結(jié)構(gòu)及類06-17
Java數(shù)據(jù)結(jié)構(gòu)和算法筆記10-18
Java與Java web有什么不同08-26
java教程之Java編程基礎(chǔ)09-12
什么是Java09-20
Java的類07-19
java講解06-23
Java發(fā)展史之Java的由來08-24
Java的內(nèi)存模型09-22
Java 的分支結(jié)構(gòu)10-27