Java 類集框架

2021-09-09 08:01:50 字數 2051 閱讀 8047

主要方法

add()增加資料

clear()清空資料

contains()是否包含某個資料

isempty()是否為空

remove()移除某個資料

size()獲取集合中的資料個數

toarray()轉換為物件陣列

iterator()例項化父介面iterator

物件陣列使用remove()和contains()時要覆寫物件中的equals()方法

collection介面無法區分儲存的資料是否重複,主要使用它的兩個子介面list和set

list子介面對collection父介面的功能進行了擴充,它的最大特點是資料可重複

get()獲取索引對應的資料

set()修改索引對應的資料

listiterator()例項化listiterator介面的物件

特點:採用非同步處理,查詢速度快,增刪資料慢

特點:採用同步處理,速度慢

棧,採用先進後出的資料結構

常用方法:

push()入棧,存放資料

pop()出棧,取出棧頂資料

特點:增刪資料快,查詢資料慢

簡單的繼承了collection介面,資料不重複

特點:無序,查詢速度快

特點:有序

排序是通過物件所對應的類實現比較強介面comparable實現的

重複元素的清除依靠類覆寫hashcode()和equals()方法實現

集合物件獲取iterator介面的例項

iterator主要的方法:

hasnext()是否還有內容

next()取出當前內容

支援從後向前的輸出,還支援了資料的增刪改,實際開發中很少用到

利用foreach直接輸出集合中的資料

早期配合vector進行資料輸出的方法

map用於儲存一對關聯資料key=value

常用方法:

put(key,value)新增資料

get(key)取出key對應的value

entryset()轉為set集合

keyset()只將key轉為set集合

key物件的類需要覆寫contains()和equals()

特點:key不重複,無序,非同步操作

早期的乙個子類

特點:key,value不為空,同步操作

特點:key,value均為string型

常用方法:

setproperty(key,value)存放資料

getproperty(key,default)獲取key對應的value,可以設定key不存在時預設值

store(outputstream,comment)通過輸出流儲存資料,可以設定備註

load(inputstream)通過輸入流讀取資料

map.entry介面實現

getkey()

getvalue()

setvalue()

先將map.entryset()轉set,再set.iterator()獲取iterator物件,然後從iterator中獲取map.entry,再從map.entry獲取鍵,值資料

為了方便性而增加的,可以操作list,set,map

常用方法

addall()增加資料

binarysearch()二分法查詢資料(二分法要先進行資料排序)

copy()集合的複製

reverse()集合反轉

sort()集合排序

將集合轉為資料流進行操作與輸出

常用方法:

count()獲取資料個數

distinct()消除重複資料

filter()資料過濾

skip()跳過資料個數

limit()設定取出資料的個數

allmatch()資料匹配

anymatch()資料匹配,匹配任一乙個

stream中也有相關方法

map()資料處理,reduce()資料分析

java基礎 類集框架二

學習筆記 set hashset treeset 一 set簡介 set 元素是無序 存入和取出的順序不一定一致 元素不可以重複 hashset 底層資料結構是雜湊表 hashset是如何保證元素唯一性的呢?如果元素的hashcode值相同,才會判斷equals是否為true 如果元素的hashco...

Java類集框架 HashMap原始碼分析

hashmap是基於map的鍵值對對映表,底層是通過陣列 鍊錶 紅黑樹 jdk1.8加入 來實現的。hashmap結構 hashmap中儲存元素,是將key和value封裝成了乙個node,先以乙個node陣列的來儲存,通過key的hashcode來計算hash值,根據hash值和hashmap的大...

Java類集框架 HashMap原始碼分析

hashmap是基於map的鍵值對對映表,底層是通過陣列 鍊錶 紅黑樹 jdk1.8加入 來實現的。hashmap結構 hashmap中儲存元素,是將key和value封裝成了乙個node,先以乙個node陣列的來儲存,通過key的hashcode來計算hash值,根據hash值和hashmap的大...