1. 程式人生 > >4.畢向東_集合框架總結

4.畢向東_集合框架總結

1.基本概要 集合框架:Map+Collection ---->用集合幹嘛? 面向物件的事物使用物件&&物件儲存使用集合 ---->幾種遍歷的方式: 1.傳統for:可以定義角標,比較完善。 2.高階for:只能獲取元素 不能對集合進行操作 3.迭代器:除了遍歷至少還可以remove集合中元素的動作 listiterator可以在遍歷過程中增刪改查 ---->集合選擇: 實際需求沒有說保證元素唯一,一般選擇list集合即可。 ---->直觀事例圖 2.集合和陣列: 3.Set集合: *元素是無序的 <存入和取出的順序不一定一致>
*元素不可以重複 <要保證元素的唯一性> ——>HashSet: <沒有複寫方法之前使用作業系統底層計算哈西值> 先:hasCode()---->地址是否相同? 不同—>視為不重複的 需要注意!!不會呼叫equals() 相同—>繼續判斷: 後: 呼叫equals()判斷 ---->是否是同一物件? String類的equals方法原始碼: ——>TreeSet: <必須具備比較性,所以要定義好兩種中的一種排序方法> —>排序時,主要條件相同時,一定要判斷一下次要條件 —>返回0的時候表示相同就可以確保元素的唯一性
了。 1.元素實現comparable介面重寫compareTo()——>元素自身具備比較性<預設順序> 2.定義一個comparator介面的比較器——>集合自身具備比較性<元素自身不具備比較性or不是所需要的順序> 二叉樹這樣的資料結構—>可以減少比較次數 4.List集合: 根據角標索引實現增刪改查 特有的ListIterator!!! ——>迭代器只知道迭代前集合的情況,突然併發又新增元素 會出現異常。 ArrayList: 採用的是陣列形式來儲存物件的,這種方式將物件放在連續的位置中,所以最大的缺點就是插入刪除時非常麻煩。
LinkedList: 採用的將物件存放在獨立的空間中,而且在每個空間中還儲存下一個連結的索引  但是缺點就是查詢非常麻煩 要叢第一個索引開始

相關推薦

4._集合框架總結

1.基本概要 集合框架:Map+Collection ---->用集合幹嘛? 面向物件的事物使用物件&&物件儲存使用集合 ---->幾種遍歷的方式: 1.傳統for:可以定義角標,比較完善。 2.高階for:只能獲取元素 不能

黑馬程式設計師-- 老師--集合框架(容器)分享

集合框架(容器) 逐層向上抽取 Collection(根介面,表示一組物件) 常用:List(ArrayList LinkedList Vector)          Set(HashSet TreeSet) 為什麼有這麼多容器:每個容器對資料的儲存方式(資料結構)不同

—Java基礎知識總結(超級經典)

Java基礎知識總結(超級經典)   寫程式碼:     1,明確需求。我要做什麼?     2,分析思路。我要怎麼做?1,2,3。     3,確定步驟。每一個思路部分用到哪些語句,方法,和物件。     4,程式碼實現。用具體的java語言程式碼把思路體現出來。 &nbs

Java基礎知識__Java基礎視頻教程筆記(5-10)

efi color 逗號 ret 語句 簡單的 靜態成員 throws 解決 06天-05-面向對象(幫助文檔的制作javadoc):java文檔生成命令:javadoc -d filepatn demo.java -author -version(可選)一個類中默認會

Java基礎知識__Java基礎視頻教程筆記(13)

書寫 線程 定位 obi binarys hexstring 替換 ringbuf 3.5 13天-01-String  String類適用於描述字符串事物。  常見的操作:1.獲取:   1.1字符串中包含的字符數,也就是字符串的長度。 int length():獲取長度

Java語言中的集合框架總結

鍵值 gen collect sort jdk1 pri 不能 map 刪除 一、集合框架   集合是ava語言中非常重要的API;   用來存儲多個數據;   實現了不同的數據結構。   三大接口:   Collection:所有集合類的根接口;List、set是常用的子

致敬java視頻

目錄 傳智播客 編程思想 容易 區別 裏的 編譯 系統 elisp 大一: 轉專業之前在網易雲公開課看過麻省理工的線代收益頗多, 大二上學期: 在網易雲上看了阿發的c,反復看了五六遍,感覺不難又總感覺少點什麽,後來看了好斌(優秀的專科老師)豁然開朗,看了兩遍。好斌的數據結構

java基礎day8

1. Throwalbe有兩個子類:Error和Exception 一般的異常類裡面有三個得到異常資訊的方法: getMessage() :獲取異常資訊; toString():獲取異常類名和異常資訊; printStackTrace():獲取異常類名和異常資訊,以及異常出

java基礎-day6-8

1.只有類才存在靜態的變數 方法只能對靜態變數的操作 不能在方法內試圖定義靜態變數否則的話會丟擲編譯錯誤。     靜態變數的本意是為了讓所有的物件共享這個變數,如果在方法裡面定義靜態變數的話就存在邏輯錯誤了,也達不到你想要目的. 因為在方法定義靜態變數根本沒有他的任何

Java day4----陣列

1.陣列宣告格式: int[] arr=new int[length]; int arr[]=new int[length] int[] arr=new int[]{1,2,4,4,2,2,345}; int[] arr={1,2,4,4,2,2,345}; 2.java程式在執

javaday2-day3

        1.轉義字元:通過\轉變後面字母或者符號的含義         \n:換行。         \b:退格。相當於backspace。 &

java第一章節作業

JRE和JDK的區別:            JDK指的是“Java Development Kit”,JRE指的是“Java Runtime Environment”,裡面包含了JVM和java程式所需要的核心類庫等,如果想要執行一個

Java之集合框架總結詳解

Java 集合框架主要包括兩種型別的容器,一種是集合(Collection),儲存一個元素集合,另一種是圖(Map),儲存鍵/值對對映。Collection 介面又有 3 種子型別,List、Set 和 Queue,再下面是一些抽象類,最後是具體實現類,常用的有 ArrayList、LinkedLi

集合框架總結-序

集合框架初步學習後,打算寫下此係列文章總結 本文只做總的概述,不對某個集合進行詳細解析 詳細解析請移步同系列其他文章 ArrayList部分原始碼解析     HashMap部分原始碼及疑難問題解析 Java Map遍歷方式的選——TreeMap

Java 知識點整理-12.Java集合框架 Map+HashMap+LinkedHashMap+TreeMap+Collections+泛型固定下邊界+集合框架總結

目錄 Map集合概述和特點 HashMap LinkedHashMap TreeMap HashMap Collections類 泛型固定下邊界 集合框架總結 Map集合概述和特點 1、Map介面概述: public interface Map

java.util.Collection包 java集合框架總結

java.util.Collection java.util.Collection(以下簡稱Collection)的子介面有List Set Queue,他們各自都有一個抽象實現類AbstractCollection、AbstractList、Abstrac

傳智35天JavaSE知識點(陸續更新)

第一天 1.1995年Sun公司(後被Oracle公司收購); 2.Java之父-James Goslin; 3.Java新特性:跨平臺性; 4.三大技術架構:jdk1.5(java5.0)後:JavaEE,JavaSE,JavaME; 5.JDK:Java Dev

javaSE基礎知識(視訊筆記)

程式碼僅僅是你思想的一種體現形式。知識預備:軟體開發軟體:一系列按照特定順序組織的計算機資料和指令的集合.常用的軟體;系統軟體(DOS,windows,Linux等)應用軟體(掃雷,迅雷,QQ等)什麼是開發?製作軟體人機互動軟體的出現實現了人與計算機之間的更好的互動.互動方式

Java集合框架總結—超詳細-適合面試

Set和List介面是Collection介面派生的兩個子介面,Queue是Java提供的佇列實現,類似於List。Map實現類用於儲存具有對映關係的資料(key-value)。   2、Set、List和Map可以看做集合的三大類。     List集合是有序集合,集合中的元素可以重複,訪問集合中的元素可以