亚洲日本在线在线看片,欧美一级a免费在线观看,亚洲 另类 在线 欧美 制服,精品婷婷乱码久久久久久蜜桃

  • <small id="frgz1"></small>
      <legend id="frgz1"><strong id="frgz1"></strong></legend>
      <small id="frgz1"></small>
        全國(guó)統(tǒng)一咨詢電話 4006-303-880
        匯上優(yōu)課 昆明培訓(xùn) 昆明中公優(yōu)就業(yè)IT培訓(xùn)中心 學(xué)習(xí)資料 Java基礎(chǔ)知識(shí)——Java數(shù)組與集合

        Java基礎(chǔ)知識(shí)——Java數(shù)組與集合

        2025-06-12 15:51閱讀:648 分享


        導(dǎo)語(yǔ)



        Java基礎(chǔ)知識(shí)——Java數(shù)組與集合,在java中我們可以用數(shù)組或者集合將一些數(shù)據(jù)集中起來(lái)進(jìn)行管理,但是數(shù)據(jù)和集合也有一些不同的特點(diǎn)。昆明中公教育小編為大家整理了數(shù)組與集合的相關(guān)資料,供大家參考





        Java數(shù)組與集合

        當(dāng)我們創(chuàng)建數(shù)組的時(shí)候,我們需要指定數(shù)組的大小,也就是需要說(shuō)明這個(gè)數(shù)據(jù)可以存多少數(shù)據(jù),并且指定所存數(shù)據(jù)的類型,比如我們要存int類型或者其他類型的,當(dāng)我們規(guī)定好存儲(chǔ)的大小和類型之后,程序會(huì)為我們?cè)趦?nèi)存中開(kāi)辟一塊連續(xù)的存儲(chǔ)空間,并且只能保存我們之前規(guī)定的數(shù)據(jù)類型,不可以存放其他類型;使用數(shù)組的時(shí)候,我們修改和獲取數(shù)組里面的內(nèi)容速度會(huì)很快,但是因?yàn)榉峙涞膬?nèi)存是連續(xù)的,當(dāng)我們需要在中間插入一個(gè)數(shù)據(jù)的時(shí)候,需要將后面的數(shù)據(jù)一個(gè)一個(gè)的往后移動(dòng),然后在插入的位置保存需要插入的值,這樣插入效率就會(huì)比較低了;

        在java中集合List是一個(gè)接口,常用的實(shí)現(xiàn)List的類有ArrayList,LinkList,Vector;這三個(gè)底層的實(shí)現(xiàn)也是有不同的區(qū)別;

        ArrayList底層的實(shí)現(xiàn)是動(dòng)態(tài)數(shù)組,所以ArrayList對(duì)于數(shù)據(jù)的查詢,效率會(huì)比較高,但是對(duì)于數(shù)據(jù)的插入效率會(huì)比較低;

        LinkList底層的實(shí)現(xiàn)是雙向鏈表,鏈表的實(shí)現(xiàn)原理是一個(gè)節(jié)點(diǎn)連接著下一個(gè)節(jié)點(diǎn),所以一個(gè)鏈表在內(nèi)存中的地址并不是連續(xù)的,當(dāng)我們需要在第N個(gè)位置之后插入一個(gè)數(shù)據(jù)的時(shí)候,程序可以在空閑的內(nèi)存中將數(shù)據(jù)保存,然后將這個(gè)數(shù)據(jù)的下一個(gè)節(jié)點(diǎn)指向第N個(gè)位置的下一個(gè)節(jié)點(diǎn),然后重新將第N個(gè)位置數(shù)據(jù)的下一個(gè)位置指向新創(chuàng)建的數(shù)據(jù),這樣就將新的數(shù)據(jù)插入到了鏈表中,這種形式不需要移動(dòng)插入位置的后邊數(shù)據(jù),僅僅只是修改了節(jié)點(diǎn)的指向,所以鏈表插入效率會(huì)比較高,但是如果要查詢的時(shí)候,就需要從頭結(jié)點(diǎn)往后一個(gè)一個(gè)的查找,知道找到所要查找的數(shù)據(jù),所以鏈表的查詢效率相對(duì)比較低了;

        Vector的實(shí)現(xiàn)也是基于數(shù)據(jù)實(shí)現(xiàn)的(類似ArrayList),但是他與ArrayList不同的點(diǎn)在于,Vector是線程安全的,所以在效率方面會(huì)比ArrayList低一些;

        雖然ArrayList是基于數(shù)據(jù)實(shí)現(xiàn)的,但是數(shù)組一旦確定大小之后,以后是不可以再次修改保存數(shù)據(jù)量大小的,但是ArrayList并沒(méi)有大小的限制,他是基于數(shù)據(jù)進(jìn)行動(dòng)態(tài)擴(kuò)容的,所以效率方面數(shù)組的效率相對(duì)于ArrayList高一些;

        在我們開(kāi)發(fā)中,如果確定空間大小的,我們可以使用數(shù)據(jù)來(lái)進(jìn)行保存,如果不確定大小的數(shù)據(jù)可以使用List進(jìn)行保存數(shù)據(jù);然后根據(jù)數(shù)據(jù)查詢頻率和增刪頻率的不同,可以選擇ArrayList和LinkList;

        以上就是Java字符串的基礎(chǔ)知識(shí),如果如果你還想更詳細(xì)的了解Java相關(guān)內(nèi)容可以點(diǎn)擊主頁(yè)

        以上就是昆明中公優(yōu)就業(yè)IT培訓(xùn)中心為您提供Java基礎(chǔ)知識(shí)——Java數(shù)組與集合的全部?jī)?nèi)容,更多內(nèi)容請(qǐng)進(jìn)入學(xué)習(xí)資料 查看

        溫馨提示: 提交留言后老師會(huì)第一時(shí)間與您聯(lián)系! 熱線電話:4006-303-880
        【學(xué)?!孔稍儫峋€: 4006-303-880
        以上信息知識(shí)產(chǎn)權(quán)歸具體機(jī)構(gòu)所有 | 招生合作 | 免責(zé)聲明 | 版權(quán)/投訴