您好,登錄后才能下訂單哦!
Java是一門面向?qū)ο缶幊陶Z言,不僅吸收了C++語言的各種優(yōu)點(diǎn),還摒棄了C++里難以理解的多繼承、指針等概念,因此Java語言具有功能強(qiáng)大和簡(jiǎn)單易用兩個(gè)特征。
數(shù)組
數(shù)組是java語言內(nèi)置的數(shù)據(jù)類型,他是一個(gè)線性的序列,所有可以快速訪問其他的元素,數(shù)組和其他語言不同。
當(dāng)你創(chuàng)建了一個(gè)數(shù)組時(shí),他的容量是不變的,而且在生命周期也是不能改變的,還有JAVA數(shù)組會(huì)做邊界檢查,如果發(fā)現(xiàn)有越界現(xiàn)象,會(huì)報(bào)RuntimeException異常錯(cuò)誤,當(dāng)然檢查邊界會(huì)以效率為代價(jià)。
集合
JAVA還提供其他集合,list,map,set,他們處理對(duì)象的時(shí)候就好像這些對(duì)象沒有自己的類型一樣,而是直接歸根于Object,這樣只需要?jiǎng)?chuàng)建一個(gè)集合,把對(duì)象放進(jìn)去,取出時(shí)轉(zhuǎn)換成自己的類型就行了。
集合和數(shù)組都是Java中的容器。那么集合和數(shù)組的區(qū)別是什么?下面給讓大家介紹一下。
java中數(shù)組和集合的區(qū)別
1、數(shù)組可以儲(chǔ)存基本數(shù)據(jù)類型和對(duì)象,而集合中只能儲(chǔ)存對(duì)象(可以以包裝類形式存儲(chǔ)基本數(shù)據(jù)類型)。
2、數(shù)組的長(zhǎng)度是固定的,集合長(zhǎng)度是可以改變的。
3、定義數(shù)組時(shí)必須指定數(shù)組元素類型,集合默認(rèn)其中所有元素都是Object
4、無法直接獲取數(shù)組實(shí)際存儲(chǔ)的元素個(gè)數(shù),length用來獲取數(shù)組的長(zhǎng)度,但可以通過size()直接獲取集合實(shí)際存儲(chǔ)的元素個(gè)數(shù)
5、集合有多種實(shí)現(xiàn)方式和不同的適用場(chǎng)合,而不像數(shù)組僅采用分配連續(xù)的空間方式
6、集合以接口和類的形式存在,具有封裝,繼承和多態(tài)等類的特性,通過簡(jiǎn)單的方法和屬性調(diào)用即可實(shí)現(xiàn)各種復(fù)雜的操作,大大提高軟件的開發(fā)效率。
以上就是java中數(shù)組和集合的區(qū)別是什么?的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注億速云其它相關(guān)文章!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。