關於集合的一些問題

2021-09-12 05:47:45 字數 1102 閱讀 5612

arraylist查詢速度快

linklist新增,刪除速度快

乙個有引數,乙個沒有引數

conllection的remove()採用鍊錶結構找出被刪除的項,要乙個乙個遍歷去找,而iterator的remove()方法結合next()方法使用,

在使用iterator遍歷時,使用conllection的remove(),集合中物件的個數會改變而iterator內部物件個數不會,會出現異常,而使用iterator的remove(),iterator內部物件和原來集合中物件的個數保持一致,

array長度固定,arraylist長度可變

array只能儲存一種資料型別,arraylist可以儲存多種資料型別

arraylist是array的複雜版本

陣列轉list

public void test();//宣告例項乙個陣列

liststrings=arrays.aslist(str);//轉威list

}

list轉陣列

public void test()
hashset速度最快

treeset有排序功能

需要按照插入的順序儲存集合,使用linkedhashset

haspmap插入、刪除和定位元素最好

treemap排序功能更好

linkedhashmap按照插入的順序排序更好

hashmap

hashset

實現了map介面

實現了set介面

儲存鍵值對

儲存物件

呼叫put()新增元素

呼叫add()新增元素

使用key計算hashcode

使用成員物件計算hashcode

速度較快,使用唯一鍵獲取值

速度較慢

通過put和get儲存和獲取物件,儲存物件時,我們將k/v傳給put方法時,他呼叫hashcode計算hash從而得到bucket位置,進一步儲存,hashmap會根據當前bucket的占用情況自動調整容量。獲取物件時,將k傳給get,他呼叫hashcode計算hash從而得到bucket位置,並進一步呼叫equals()方法確認鍵值對。

關於面試的一些問題

面試過程中,面試官會向應聘者發問,而應聘者的回答將成為面試官考慮是否接受他的重要依據。對應聘者而言,了解這些問題背後的 貓膩 至關重要。本文對面試中經常出現的一些典型問題進行了整理,並給出相應的回答思路和參 讀者無需過分關注分析的細節,關鍵是要從這些分析中 悟 出面試的規律及回答問題的思維方式,達到...

關於Labview的一些問題

第一章 虛擬儀器及 labview入門 1 虛擬儀器概述 虛擬儀器 virtual instrumention 是基於計算機的儀器。計算機和儀器的密切結合是目前儀器發展的乙個重要方向。粗略地說這種結合有兩種方式,一種是將計算機裝入儀器,其典型的例子就是所謂智慧型化的儀器。隨著計算機功能的日益強大以及...

關於DropDownList的一些問題

dropdownlist選擇後提示不能在dropdownlist選擇多項 原因在於drop.selected true 用的是item的引用,無法覆蓋上次操作 有2種方法 一種是直接drop.selectvalue value 選定指定資料 另一種是在操作前 呼叫clearselection 方法清...