版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、Java基礎教程主講人:小剛老師第6章 集合和數(shù)組6.1 集合初探6.2 集合的遍歷6.3 任務:三人斗地主6.4 數(shù)組Java基礎教程第6章 集合和數(shù)組6.5 任務:數(shù)組排序Java基礎教程 Collection集合6.1 集合初探第6章 集合和數(shù)組Java基礎教程方法名稱功能描述boolean add(Object element)添加一個元素到集合中boolean addAll(Collection from)將from集合中的所有元素添加到集合中void clear()清空集合boolean contains(Object obj)判斷集合中是否含有該元素boolean contain
2、sAll(Collection c)判斷集合中是否包含了集合c中所有的元素boolean equals(Object obj)判斷集合是否相等bollean isEmpty()判斷集合是否為空Iterator iterator()返回一個實現(xiàn)了Iterator接口的對象boolean remove(Object element)刪除集合中的該元素boolean removeAll(Collection c)刪除集合中所有與c集合中相同的元素boolean retainAll(Collection c)刪除集合中不在c中的元素int size()返回集合中元素的數(shù)目 Map集合6.1 集合初探第
3、6章 集合和數(shù)組Java基礎教程方法名稱功能描述Object put(Object key, Object value)添加一個鍵值對到Map中Object remove(Object key)刪除鍵值是key的映射并返回該key映射的valuevoid putAll(Map mapping)將另一個map添加到該Map中void clear()清除map中的數(shù)據(jù)Object get(Object key)獲取該key映射的value值boolean containsKey(Object key)判斷映射表是否含有該key值的映射boolean containsValue(Object key
4、)判斷映射表是否含有該value值的映射int size()返回該映射表的鍵值對個數(shù)boolean isEmpty()判斷映射表是否為空Set keySet()返回映射表的鍵的Set集合Set entrySet()返回一個實現(xiàn)了Map.Entry接口的對象集合Collection values()返回map的value值的集合 ArrayList集合6.1 集合初探第6章 集合和數(shù)組Java基礎教程 LinkedList集合6.1 集合初探第6章 集合和數(shù)組Java基礎教程 Set集合 Set是集合中不可以重復的一種抽象數(shù)據(jù)類型,這與數(shù)學中的集合有相同的意味,集合中的元素不可以重復,Set中的
5、元素也是如此,向Set集合中插入一個已經(jīng)存在的數(shù)據(jù)時,方法會返回一個false表示該數(shù)據(jù)未能插入數(shù)據(jù)。6.1 集合初探第6章 集合和數(shù)組Java基礎教程 Iterator接口 (1)Iterator(迭代器)是一種設計模式,開發(fā)人員可以無需了解序列的底層結構就可以遍歷該序列; (2)Iterator接口含有三個重要的方法,hasNext()、next()和remove()方法,首先使用hasNext()判斷迭代器是否有后續(xù)對象,如果有用next()方法接受,同時還可以用remove()方法刪除該元素;6.2 集合的遍歷第6章 集合和數(shù)組Java基礎教程 增強型for循環(huán) 增強型for循環(huán)可以循
6、環(huán)實現(xiàn)了Iterator接口的數(shù)據(jù)類型,這種循環(huán)只能做簡單的遍歷工作,無法像Iterator對象那樣刪除數(shù)據(jù)等;6.2 集合的遍歷第6章 集合和數(shù)組Java基礎教程 任務描述 編寫一個自動發(fā)牌程序,模擬三人斗地主的摸牌場景。首先要給出提示,誰首先開始摸牌,并且摸牌要和現(xiàn)實摸牌一樣,三人循環(huán)摸牌,最后還要剩余三張底牌,同時給出地主牌,摸到地主牌的玩家擁有三張底牌。三張底牌三人都可以看到。當三張底牌派發(fā)給地主后提示玩家摸牌結束。6.3 任務:三人斗地主第6章 集合和數(shù)組Java基礎教程 實現(xiàn)思路 (1)首先將一副牌的四種花色和對應的牌面值隨機組合放進Set集合,因為Set集合是非重復集合,所以無需
7、考慮重復的問題,另外,因為每個牌面值出現(xiàn)的次數(shù)只能是四次,所以,當該牌面值出現(xiàn)了四次以后,將該牌面刪除。 (2)獲取洗牌結束的牌組(鏈表,用Set集合作為初始化數(shù)據(jù)集),隨機額抽取三張牌,作為底牌,不對玩家展示,并從剩余的牌組中隨機選取一個張牌,作為地主牌,對所有人展示但不移動其位置。 (3)順序循環(huán)發(fā)牌,直到牌組沒有牌為止,將底牌展示并發(fā)給地主。提示玩家發(fā)牌結束。6.3 任務:三人斗地主第6章 集合和數(shù)組Java基礎教程 數(shù)組的創(chuàng)建和初始化 int arr = 1,2,3; / 以賦值的方式直接初始化,數(shù)組的大小是其值元素的個數(shù)(長度是3) int arr = new int3; / 同上,
8、創(chuàng)建一個沒有賦值的長度是3的數(shù)組6.4 數(shù)組第6章 集合和數(shù)組Java基礎教程 數(shù)組的使用 (1)一維數(shù)組的使用; (2)二維數(shù)組的使用;6.4 數(shù)組第6章 集合和數(shù)組Java基礎教程 任務描述 對于一個給定的數(shù)組,如果通過冒泡排序的方式進行實現(xiàn),那么在一些對元素龐大的任務而言,無疑是一個災難,在猜數(shù)字的游戲中使用的中分法猜數(shù)字的方式能夠快速且準確的縮小數(shù)字的所屬范圍。相應的,如果使用這種方式來排序,效率也會相應的會快很多。6.5 任務:數(shù)組排序第6章 集合和數(shù)組Java基礎教程 實現(xiàn)思路 二分法插入排序是在插入第i個元素時,對前面的0i-1元素進行折半,先跟他們中間的那個元素比,如果小,則對前半再進行折半,否則
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年BRC食品企業(yè)內(nèi)部控制培訓課件
- 2025屆河北省保定市高三上學期10月期中地理含答案
- 2024琥珀教學課件:解讀樹脂中的歷史信息
- 2024屆新高考生物必刷題12 基因工程(共50題)(原卷版)
- 疑難病例討論記錄范文上瞼下垂
- 四年級語文楚才杯小青蛙上網(wǎng)記1
- 2024-2025學年新教材高中政治第三單元文化傳承與文化創(chuàng)新第8課第2框文化交流與文化交融學案部編版必修4
- 八年級數(shù)學下冊單元清一新版華東師大版
- 2024-2025學年新教材高中化學第4章化學反應與電能第3節(jié)金屬的腐蝕與防護課堂達標含解析新人教版選擇性必修第一冊
- 2025屆高考生物一輪復習課后限時集訓25人體的內(nèi)環(huán)境與穩(wěn)態(tài)含解析新人教版
- 消防安全培訓內(nèi)容
- 2024-2030年辣椒種植行業(yè)市場深度分析及發(fā)展策略研究報告
- 變電站綠化維護施工方案
- 校園展美 課件 2024-2025學年人美版(2024)初中美術七年級上冊
- 2024版《糖尿病健康宣教》課件
- ktv保安管理制度及崗位職責(共5篇)
- 腦出血試題完整版本
- 義務教育信息科技課程標準(2022年版)考試題庫及答案
- 建筑施工安全生產(chǎn)責任書
- 新員工三級安全教育考試試題參考答案
- 公司年會策劃及執(zhí)行服務合同
評論
0/150
提交評論