最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

簡(jiǎn)述Java編程語言對(duì)象的容納

 更新時(shí)間:2017年09月18日 11:20:24   作者:Core Hua  
這篇文章主要對(duì)Java編程思想中對(duì)象的容納進(jìn)行了一個(gè)總體的介紹,具有一定的參考價(jià)值,需要的朋友可以了解下。

如果一個(gè)程序只含有數(shù)量固定的對(duì)象,而且已知它們存在的時(shí)間,那這個(gè)程序是相當(dāng)簡(jiǎn)單的。

數(shù)組

容納對(duì)象有很多方式,數(shù)組是其中最為普遍的一種,它主要有如下兩個(gè)特點(diǎn):效率和類型。對(duì)于Java來說,為保存和訪問一系列對(duì)象(實(shí)際是對(duì)象的句柄),最有效率的方法莫過于數(shù)組。數(shù)組實(shí)際是一個(gè)簡(jiǎn)單的線性序列,因此訪問速度非常的快,但是它也存在一些限制,如數(shù)組的大小是固定的,并且不可以在“存在時(shí)間”內(nèi)發(fā)生改變。
對(duì)于基本數(shù)據(jù)類型構(gòu)成的數(shù)組,其運(yùn)作類型跟對(duì)象數(shù)組相似,所不同的是前者里面保存的不是對(duì)象的句柄,而是實(shí)際的數(shù)值。

集合

編程的時(shí)候,通常不知道究竟需要保存多少對(duì)象,有時(shí)甚至想用更復(fù)雜的方式來保存對(duì)象,為解決這樣的問題,Java提供了幾種“集合類”:Vector(矢量),BitSet(位集),Stack(堆棧)以及HashTable(散列表)。

集合的缺點(diǎn):丟失了類型信息。它容納的實(shí)際上是類型為Object的對(duì)象的句柄。

枚舉器(迭代器)

用集合保存對(duì)象后再訪問,需要事先知道集合中對(duì)象的準(zhǔn)確類型,否則使用的過程中會(huì)出異常。而迭代器可以解決這個(gè)問題。迭代器是一個(gè)對(duì)象,其作用是遍歷一系列對(duì)象,并選擇那個(gè)序列中的每個(gè)對(duì)象,同時(shí)不讓客戶程序員知道或關(guān)注那個(gè)序列的基礎(chǔ)結(jié)構(gòu)。

Java中的Enumeration就是一個(gè)典型的迭代器,主要用來干如下事情:

(1)用一個(gè)名為Elements的方法要求集合為我們提供一個(gè)Enumeration,首次調(diào)用其NextElements時(shí),這個(gè)Enumeration會(huì)返回序列中的第一個(gè)元素。

(2)用NextElements獲取下一個(gè)對(duì)象。

(3)用HasMoreElements檢查是否有更多的對(duì)象。

集合的類型:

1. Vector

Vector 類可實(shí)現(xiàn)可增長(zhǎng)的對(duì)象數(shù)組。與數(shù)組一樣,它包含可以使用整數(shù)索引進(jìn)行訪問的組件。但是,Vector 的大小可以根據(jù)需要增大或縮小,以適應(yīng)創(chuàng)建 Vector 后進(jìn)行添加或移除項(xiàng)的操作。

2. BitSet

BitSet實(shí)際是由“二進(jìn)制位”構(gòu)成的一個(gè)Vector。如果希望高效率地保存大量“開-關(guān)”信息,就應(yīng)使用BitSet。位set 的每個(gè)組件都有一個(gè) boolean 值。用非負(fù)的整數(shù)將 BitSet 的位編入索引。可以對(duì)每個(gè)編入索引的位進(jìn)行測(cè)試、設(shè)置或者清除。通過邏輯與、邏輯或和邏輯異或操作,可以使用一個(gè) BitSet 修改另一個(gè) BitSet 的內(nèi)容。 默認(rèn)情況下,set 中所有位的初始值都是 false。

3. Stack

Stack也稱為“后入先出”集合。Java中的Stack類繼承自Vector類,它通過五個(gè)操作對(duì)類 Vector 進(jìn)行了擴(kuò)展 ,允許將向量視為堆棧。它提供了通常的 push 和 pop 操作,以及取堆棧頂點(diǎn)的 peek 方法、測(cè)試堆棧是否為空的 empty 方法、在堆棧中查找項(xiàng)并確定到堆棧頂距離的 search 方法。

4. HashTable

哈希表是一種重要的存儲(chǔ)方式,也是一種常見的檢索方法。其基本思想是將關(guān)系碼的值作為自變量,通過一定的函數(shù)關(guān)系計(jì)算出對(duì)應(yīng)的函數(shù)值,把這個(gè)數(shù)值解釋為結(jié)點(diǎn)的存儲(chǔ)地址,將結(jié)點(diǎn)存入計(jì)算得到存儲(chǔ)地址所對(duì)應(yīng)的存儲(chǔ)單元。檢索時(shí)采用檢索關(guān)鍵碼的方法?,F(xiàn)在哈希表有一套完整的算法來進(jìn)行插入、刪除和解決沖突。在Java中哈希表用于存儲(chǔ)對(duì)象,實(shí)現(xiàn)快速檢索。

總結(jié)

以上所述就是本文關(guān)于Java編程中對(duì)象的容納的全部介紹,希望對(duì)大家有所幫助。

詳細(xì)實(shí)例可以參考:Java編程思想對(duì)象的容納實(shí)例詳解

相關(guān)文章

  • JAVA GUI自定義JPanel畫板背景

    JAVA GUI自定義JPanel畫板背景

    這篇文章主要為大家詳細(xì)介紹了JAVA GUI自定義JPanel畫板背景的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-12-12
  • Java壓縮文件為ZIP并加密的詳細(xì)步驟

    Java壓縮文件為ZIP并加密的詳細(xì)步驟

    Zip是一種常用的文件壓縮格式,下面這篇文章主要給大家介紹了關(guān)于Java壓縮文件為ZIP并加密的詳細(xì)步驟,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-11-11
  • Spring的UnsatisfiedDependencyException異常的解決

    Spring的UnsatisfiedDependencyException異常的解決

    在使用Spring框架開發(fā)應(yīng)用程序時(shí),我們經(jīng)常會(huì)遇到各種異常,本文主要介紹了Spring的UnsatisfiedDependencyException異常的解決,感興趣的可以了解一下
    2023-11-11
  • 完美解決idea光標(biāo)變成了insert光標(biāo)狀態(tài)的問題

    完美解決idea光標(biāo)變成了insert光標(biāo)狀態(tài)的問題

    這篇文章主要介紹了完美解決idea光標(biāo)變成了insert光標(biāo)狀態(tài)的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2021-02-02
  • maven 配置多個(gè)倉庫的方法

    maven 配置多個(gè)倉庫的方法

    這篇文章主要介紹了maven 配置多個(gè)倉庫的方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-08-08
  • Java實(shí)現(xiàn)的生成二維碼統(tǒng)計(jì)掃描次數(shù)并轉(zhuǎn)發(fā)到某個(gè)地址功能詳解

    Java實(shí)現(xiàn)的生成二維碼統(tǒng)計(jì)掃描次數(shù)并轉(zhuǎn)發(fā)到某個(gè)地址功能詳解

    這篇文章主要介紹了Java實(shí)現(xiàn)的生成二維碼統(tǒng)計(jì)掃描次數(shù)并轉(zhuǎn)發(fā)到某個(gè)地址功能,可實(shí)現(xiàn)生成帶統(tǒng)計(jì)功能的二維碼,涉及java二維碼的生成、參數(shù)傳遞、解析等相關(guān)操作技巧,需要的朋友可以參考下
    2018-07-07
  • 為什么在foreach循環(huán)中JAVA集合不能添加或刪除元素

    為什么在foreach循環(huán)中JAVA集合不能添加或刪除元素

    今天給大家?guī)淼奈恼率顷P(guān)于Java的相關(guān)知識(shí),文章圍繞著為什么在foreach循環(huán)中JAVA集合不能添加或刪除元素展開,文中有非常詳細(xì)的介紹及代碼示例,需要的朋友可以參考下
    2021-06-06
  • java 將字符串、list 寫入到文件,并讀取內(nèi)容的案例

    java 將字符串、list 寫入到文件,并讀取內(nèi)容的案例

    這篇文章主要介紹了java 將字符串、list 寫入到文件,并讀取內(nèi)容的案例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-09-09
  • 什么是Java多線程,如何實(shí)現(xiàn)

    什么是Java多線程,如何實(shí)現(xiàn)

    這篇文章主要給大家介紹了關(guān)于實(shí)現(xiàn)Java多線程的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用java具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧吧
    2021-11-11
  • JavaEE Filter敏感詞過濾的方法實(shí)例詳解

    JavaEE Filter敏感詞過濾的方法實(shí)例詳解

    我們無論是在聊天還是在留言時(shí),都有一些信息不希望別人看到。那么如果過濾這些關(guān)鍵詞呢?下面小編給大家分享JavaEE Filter敏感詞過濾的方法實(shí)例詳解,感興趣的朋友一起學(xué)習(xí)吧
    2016-05-05

最新評(píng)論

扎囊县| 延庆县| 大竹县| 昌宁县| 江都市| 沈阳市| 青冈县| 八宿县| 罗平县| 巨鹿县| 祥云县| 崇礼县| 平潭县| 图木舒克市| 奉化市| 安宁市| 阿城市| 池州市| 成武县| 成都市| 玉溪市| 科尔| 来安县| 舟山市| 沂南县| 政和县| 东至县| 武强县| 金平| 和政县| 苗栗县| 施甸县| 新乡市| 义马市| 海淀区| 普兰县| 温州市| 华阴市| 游戏| 仁化县| 成武县|