具有索引的ListjavautilLinkedList.PPT

  1. 1、本文档共81页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
具有索引的ListjavautilLinkedList

Comparable與Comparator 如果你的物件無法實作Comparable呢? Comparable與Comparator Collections的sort()方法有另一個重載版本,可接受java.util.Comparator介面的實作物件 Comparable與Comparator 如果想針對陣列進行排序,可以使用java.util.Arrays的sort()方法 該方法針對物件排序時有兩個版本,一個是你收集在陣列中的物件必須是Comparable(否則會拋出ClassCastException),另一個版本則可以傳入Comparator指定排序方式 Comparable與Comparator Comparator介面需要實作的只有一個compare()方法 JDK8在List上增加了sort()方法,可接受Comparator實例 Comparable與Comparator 如果有個List中某些索引處包括null,現在你打算讓那些null排在最前頭,之後依字串的長度由大到小排序 Comparable與Comparator Comparable與Comparator JDK8為排序加入了一些高階語義API 常用Map實作類別 常用Map實作類別 常用Map實作類別 HashMap中建立鍵值對應之後,鍵是無序的 如果想讓鍵是有序的,則可以使用TreeMap 鍵的部份將會排序,條件是作為鍵的物件必須實作Comparable介面,或者是在建構TreeMap時指定實作Comparator介面的物件 常用Map實作類別 想看到相反的排序結果,那麼可以如下實作Comparator: 常用Map實作類別 Properties的setProperty()指定字串型態的鍵值,getProperty()指定字串型態的鍵,取回字串型態的值 常用Map實作類別 Properties也可以從檔案中讀取屬性 常用Map實作類別 也可以使用loadFromXML()方法載入.xml檔案 常用Map實作類別 在使用java指令啟動JVM時,可以使用-D指定系統屬性: 常用Map實作類別 System.getProperties()取回的Properties實例中,包括了許多預置屬性 走訪Map鍵值 走訪Map鍵值 如果想同時取得Map的鍵與值,可以使用entrySet()方法 走訪Map鍵值 泛型語法用到某個程度時,老實說可讀性並不好 … 撰寫程式還是得兼顧可讀性 使用泛型 若你想針對某類別定義的行為操作時,必須告訴編譯器,讓物件重新扮演該型態 執行時期被收集的物件會失去形態資訊 使用泛型 實際上通常Collection中會收集同一種類型的物件 從JDK5之後,新增了泛型(Generics)語法,讓你在設計API時可以指定類別或方法支援泛型 使用API的客戶端在語法上會更為簡潔,並得到編譯時期檢查 使用泛型 使用泛型語法,會對設計API造成一些語法上的麻煩,但對客戶端會多一些友善 使用泛型 宣告與建立物件時,可使用角括號告知編譯器,這個物件收集的都會是String,而取回之後也會是String 加入了不是String的東西會如何呢? 使用泛型 Java的Collection API都支援泛型語法,若在API文件看到角括號,表示支援泛型語法 使用泛型 以使用java.util.List為例: 泛型語法有一部份是編譯器蜜糖(一部份是記錄於位元碼中的資訊) 使用泛型 以下會編譯錯誤: 使用泛型 若介面支援泛型,在實作時也會比較方便,例如: 使用泛型 再來看一下以下程式片段: 從JDK7之後有了點改善: 使用泛型 泛型也可以僅定義在方法上,最常見的是在靜態方法上定義泛型 簡介Lambda表示式 回顧一下9.1.4中的RequestQueue範例 在JDK8中可以使用Lambda表示式 簡介Lambda表示式 相對於匿名類別語法來說,Lambda表示式的語法… 省略了介面型態與方法名稱 -左邊是參數列,而右邊是方法本體 編譯器可以由Request request的宣告中得知語法上被省略的資訊 簡介Lambda表示式 如果有個介面宣告如下: 使用匿名類別來實作 簡介Lambda表示式 改用JDK8的Lambda表示式 簡介Lambda表示式 在使用Lambda表示式,編譯器在推斷型態時,還可以用泛型宣告的型態作為資訊來源 簡介Lambda表示式 來改寫一下9.1.4中的RequestQueue範例 簡介Lambda表示式 若流程較為複雜,無法於一行的Lambda表示式中寫完時,可以使用區塊{}符號包括演算流程 Iterable與Iterator 如果要你寫個forEach()

文档评论(0)

wumanduo11 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档