日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) >

java面向对象编程集合边框_JAVA 面向对象 集合框架

發(fā)布時(shí)間:2023/12/10 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java面向对象编程集合边框_JAVA 面向对象 集合框架 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

1.Java集合框架提供了一套性能優(yōu)良、使用方便的接口和類,它們位于java.util包中

如果并不知道程序運(yùn)行時(shí)會(huì)需要多少對(duì)象,或者需要 更復(fù)雜方式存儲(chǔ)對(duì)象——可以使用Java集合框架

2.java集合框架包括接口、具體類、算法

接口:Collection:List(ArrayList,LinkedList)? ? ? ? ? ?Set(HashSet , TreeSet)

Map(HashMap , TreeMap)

具體類:

算法:Collections(提供了對(duì)集合進(jìn)行排序,遍歷等多種算法的實(shí)現(xiàn))

3.Collection接口存儲(chǔ)一組不唯一、無(wú)序的對(duì)象

List接口存儲(chǔ)一組不唯一、有序(插入順序)的對(duì)象

Set接口存儲(chǔ)一組唯一、無(wú)序的對(duì)象

Map接口存儲(chǔ)一組鍵值對(duì)象,提供key到value的映射(鍵不可以重復(fù),值可以)

4.List接口的實(shí)現(xiàn)類

ArrayList實(shí)現(xiàn)了長(zhǎng)度可變的數(shù)組,在內(nèi)存中分配連續(xù)的空間。遍歷元素和隨機(jī)訪問元素的效率比較高

List? list=new ArrayList();

使用<>泛型集合:

List=new ArrayList();

LinkedList采用鏈表存儲(chǔ)方式。插入、刪除元素時(shí)效率比較高

使用泛型集合更安全 ,且方法不需要進(jìn)行強(qiáng)制類型轉(zhuǎn)換

5.List接口常用方法

方法名 說(shuō)明

boolean?add(Object?o) 在列表的末尾順序添加元素,起始索引位置從0開始

void?add(int?index,Object?o) 在指定的索引位置添加元素。索引位置必須介于0和列表中

元素個(gè)數(shù)之間

int?size() 返回列表中的元素個(gè)數(shù)

Object?get(int?index) 返回指定索引位置處的元素。取出的元素是Object類型,使

用前需要進(jìn)行強(qiáng)制類型轉(zhuǎn)換

boolean?contains(Object?o) 判斷列表中是否存在指定元素

boolean?remove(Object?o) 從列表中刪除元素

Object remove(int?index) 從列表中刪除指定位置元素,起始索引位置從0開始

6.LinkedList的特殊方法

方法名 說(shuō)明

void??addFirst(Object?o) 在列表的首部添加元素

void??addLast(Object?o) 在列表的末尾添加元素

Object??getFirst() 返回列表中的第一個(gè)元素

Object??getLast() 返回列表中的最后一個(gè)元素

Object??removeFirst() 刪除并返回列表中的第一個(gè)元素

Object??removeLast() 刪除并返回列表中的最后一個(gè)元素

7.Map接口常用方法

方法名 說(shuō)明

Object?put(Object?key,?Object?val) 以“鍵-值對(duì)”的方式進(jìn)行存儲(chǔ)

Object?get?(Object?key) 根據(jù)鍵返回相關(guān)聯(lián)的值,如果不存在指定的鍵,返

回null

Object?remove?(Object?key) 刪除由指定的鍵映射的“鍵-值對(duì)”

int?size() 返回元素個(gè)數(shù)

Set?keySet?() 返回鍵的集合

Collection?values?() 返回值的集合

boolean containsKey?(Object?key) 如果存在由指定的鍵映射的“鍵-值對(duì)”,返回true

8.遍歷Map方法

迭代器Iterator

增強(qiáng)for循環(huán):語(yǔ)法 for(元素類型t 元素變量x:數(shù)組或集合對(duì)象){

引用了x的Java語(yǔ)句

}

9:Set特性:

確定性:對(duì)任意對(duì)象都能判定其是否屬于某一集合

互異性:集合中每個(gè)元素都是無(wú)差異的(內(nèi)容差異)

無(wú)序性:集合內(nèi)的順序無(wú)關(guān)

HashSet:基于散列函數(shù)集合,無(wú)序,不支持同步

Set? ?TreeSet :基于? ? 對(duì)結(jié)構(gòu)的集合,可排序,不支持同步

LinkedHashSet:基于散列函數(shù)和雙何鏈表集合,可排序,不支持同步

10:HashSet?方法(無(wú)序)

Set? ? s=new HashSet();

Set ? ?s? = new HashSet();

s.add();添加? ? ? ? ? ? ? s.size();? ? ? ?個(gè)數(shù)

s.remove();刪除? ? ? ? ? ? s.clear();? 清空所有元素

s.contains;? 判斷集合是否又該元素

Set1.retain All(Set2)? ? ? ? ?計(jì)算1和2?的交集

System.out.println("交集是"+Set1);

eg :? Setset1=new Hashset();

Set set2=new Hashset();

11:LinkedHashSet:(可排序的,元素插入順序)

繼承HashSet,也是基于HashMap實(shí)現(xiàn),可容納null元素,不支持同步

Set? ?s=new LinkedHashSet();

Set s=new LinkedHashSet();

泛型方法和Hashset?一致(add,clear,remove,size,contains,retainAll)

通過(guò)一個(gè)雙向鏈表維護(hù)插入順序

12:Tree Set?方法(可排序,按照存儲(chǔ)對(duì)象從小到大順序進(jìn)行排序)

基于Tree Map?實(shí)現(xiàn),不可有效null元素,不支持同步

Set? s=new Treeset();

Set? s? =new? TreeSet();

泛型方法(add,clear,remove,size,contians,retainAll)

根據(jù)compare? ? ?to? 方法或指定 comparator排序

總結(jié)

以上是生活随笔為你收集整理的java面向对象编程集合边框_JAVA 面向对象 集合框架的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。