儲存資料的容器(集合,陣列)

2021-09-13 22:13:13 字數 1558 閱讀 4035

陣列

1:集合簡單的來說就是一儲存資料的容器

2:這個容器中有包含陣列和集合

2.1: arrays

2.1.1:arrays是最高效的,但是它的容量是固定的無法動態改變的,看見這個arrays就讓人想起了乙個和它非常相似的乙個list集合中的arraylist

2.1.2:arraylist是乙個容量可以動態改變的容器,但是arrayslist犧牲它的效率,

2.1.3:基於以上讓我們來談談他的區別·:a:array可以函式值發返回值 b:arrays類沒有提供刪除的方法而arraylist提供了remove()方法(刪除)

c:arrays只能夠存放相同的資料型別 如:string,int 。arraylist可以存放任何不同型別的資料,一般我們使用都會指定它的型別。

d:在arrays的建立之初他的長度就已經確定了,而arraylist的長度是可變的

2.2:map集合是通過map介面實現的

2.2.1:hashmap:提供了最快的訪問技術,沒有按照明顯的順序排列,它是以鍵值對的形式儲存資料,它的實現是不同步的,意味著它是不安全的,影響它效能的兩個因數(初始容量,載入因子【0.75】)實現原理 backed(存放鍵的地方)

2.3:treemap:是乙個有序的鍵值對集合

2.3:linkedhashmap:保持插入的順序和訪問順序 ,hashmap和雙向鍊錶的密切配合和分工合作造就了linkedhashmap(原理)

collection 是list和set的父類,而collection的父類是iterable;

iterable增強了for迴圈,

2.collection介面的remove()方法和iterator介面的remove()方法區別?

在效能方面:iterator的remove比collection的remove效率高,因為collection的remove必須先找到要刪除的項,需要到集合中乙個個遍歷才能找到物件。而iterator的remove結合了next()方法,隔一項刪除一項,效率更高。

在容錯方面:在使用iterator遍歷時,如果使用collection的remove會報異常,因為集合中物件的個數會改變而iterator 內部物件的個數不會,所以iterator不一定會報錯

3.array與arraylist有什麼區別

array是乙個陣列,而arraylist是動態陣列,也就是集合。array中只能存放相同資料型別的資料,並且陣列中的元素的個數是固定的。而arraylist可以存放不同資料型別的資料,集合的長度也是可變的。

4.怎樣將乙個陣列轉成list,有什麼方法

陣列轉list:array.aslist

list轉陣列:list.toarray()

hashset、treeset、linkedhashset區別?

hashset速度最快,treeset具有排序功能,linkedhashset按照插入的順序儲存集合

集合 陣列容器筆記

集合 陣列1 儲存的元素資料型別必須一致 2 儲存空間的分配是連續的,並且是一次性分配的 int a new int 3 a 3 9 arrayindexoutofbound ception 陣列下標越界異常 1.list 1 arraylist 注意 set中判斷元素是否重複的步驟是先看hashc...

前端容器,集合,陣列

容器初始化 看附錄,這裡不全 集合 存乙個物件 specificationoptionlist.push 存多個物件 entity 增刪改查 增 陣列名.push 刪 陣列名.splice index,1 刪除 附錄 陣列的初始化 var arrs var arrs new array var ar...

EUI庫 9 資料集合 資料容器

datagroup 設定乙個資料來源 自動建立內部所需的物件 來完成資料展示 還要設定單條資料的模板 叫itemrenderer 繼承關係 eui.list eui.listbase eui.datagroup eui.group 建立itemrenderer 繼承 eui.itemrenderer...