国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > Java > 正文

Java復(fù)習(xí)之集合框架List接口

2019-11-06 08:20:28
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

這篇博客主要是總結(jié)一下java中集合框架List接口的用法。

1.集合框架

(1)集合框架的作用

在實(shí)際開(kāi)發(fā)中,我們經(jīng)常會(huì)對(duì)一組相同類型的數(shù)據(jù)進(jìn)行統(tǒng)一管理操作。到目前為止,我們可以使用數(shù)組結(jié)構(gòu),鏈表結(jié)構(gòu)二叉樹(shù)結(jié)構(gòu)來(lái)實(shí)現(xiàn)

數(shù)組最大的問(wèn)題在于數(shù)組中的元素的個(gè)數(shù)是固定的,要實(shí)現(xiàn)動(dòng)態(tài)數(shù)組,必竟還是比較麻煩,自己實(shí)現(xiàn)鏈表或者二叉樹(shù)結(jié)構(gòu)來(lái)管理對(duì)象更是不方便

在JDK1.2版本之后,JAVA完整的提供了類集合的概念,封裝了一組強(qiáng)大的、非常方便的結(jié)合框架API,讓我們?cè)陂_(kāi)發(fā)中大大提高了效率

集合分為三大接口: Collection Map Iterator 集合框架的接口和類在Java.util包中

(2)集合框架結(jié)構(gòu)圖

這里寫圖片描述

(3)Collection接口

Collection層次結(jié)構(gòu)中的根接口。Collection表示一組對(duì)象,這些對(duì)象也稱為collection的元素。一些collection允許有重復(fù)的元素,而另一些則不允許。一些collection是有序的,而另一些則是無(wú)序的。JDK不提供此接口的任何直接實(shí)現(xiàn):它提供更具體的子接口(如set和List)實(shí)現(xiàn)。此接口通常用來(lái)傳遞collection,并在需要最大普遍性的地方操作這些collection

2.List接口

public interface List extends Collection

有序的collction。此接口的用戶可以對(duì)列表中每個(gè)元素的插入位置進(jìn)行精確控制,用戶可以根據(jù)元素的整數(shù)的索引(在列表中的位置)訪問(wèn)元素,并搜索列表中的元素。

List接口的注意事項(xiàng)

1.允許重復(fù)元素

2.必須是有序

3.允許null元素 (1)ArrayList

public class ArrayList extends AbstractKList implements List

public static void arrayList() { //創(chuàng)建ArrayList對(duì)象,默認(rèn)的容量為10,超過(guò)10個(gè)會(huì)自動(dòng)擴(kuò)充 ArrayList list =new ArrayList(); //添加元素 list.add(10); list.add("小白"); list.add(true); list.add(11); list.add(12); list.add(13); list.add(14); list.add(15); list.add(16); list.add(17); list.add(18); list.add(19); list.add(20); list.add(5,50); System.out.(2)Vector

public class Vector extends AbstractList implements List,Randomaccess,Cloneable,Serializable

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

Vector注意事項(xiàng)

1.使用動(dòng)態(tài)對(duì)象數(shù)組實(shí)現(xiàn) 2.默認(rèn)構(gòu)造方法初始化容量為10 3.擴(kuò)充方式:如果有指定的增量,當(dāng)前容量+增量 如果沒(méi)有增量:原容量*2 4.線程安全

public static void vector() { //默認(rèn)大小為10 Vector vector= new Vector(); vector.add("純純"); vector.add("夢(mèng)夢(mèng)"); vector.add("愛(ài)愛(ài)"); }

(3)LinkedList

public class LinkedList extends AbstractSequentialList implements List,Deque,Cloneable,Serializable

List接口的鏈接列表實(shí)現(xiàn)。實(shí)現(xiàn)所有可選的列表操作,并且允許所有元素。除了實(shí)現(xiàn)List接口外,LinkedList類還為在列表的開(kāi)頭以及結(jié)尾get,remove和insert元素提供了統(tǒng)一的命名方法

LinkedList注意事項(xiàng)

1.使用雙向鏈表實(shí)現(xiàn)

2.優(yōu)點(diǎn):適合插入與刪除操作

public static void linkedlist(){ LinkedList linkedList=new LinkedList(); linkedList.add("鳳鳳"); linkedList.add("萌萌"); linkedList.add("傻傻"); }
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 石楼县| 华池县| 克山县| 客服| 广安市| 凤山市| 信阳市| 临海市| SHOW| 盱眙县| 揭东县| 石泉县| 吉林省| 灌云县| 沛县| 驻马店市| 平山县| 资阳市| 竹山县| 藁城市| 龙海市| 泸定县| 彰武县| 会理县| 定结县| 赞皇县| 镶黄旗| 东安县| 马山县| 沈丘县| 汤阴县| 资兴市| 巴里| 葵青区| 阳曲县| 满城县| 南漳县| 广东省| 东乡县| 鹤庆县| 扶风县|