- 1、本文档共51页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Java的新功能ppt整理
Java 5.0 的新功能 內 容 大 綱 (1) 泛型 自動裝箱與拆箱 增強的 for 迴圈敘述 C 風格的輸出 格式化的輸入 列舉 內 容 大 綱 (2) 靜態引入 可變數目參數 泛型(1/5) Java5.0的新特性之一是引入了泛型(generics)的觀念,在Java 5.0中,許多java.util類別庫中實作Collection介面的集聚類別,被改為泛型類別,如Vector、ArrayList、LinkedList、Hashtable、HashMap、Stack、Queue、PriorityQueue、Dictionary、TreeMap及TreeSet等。 在Java 5.0之前我們使用ArrayList 清單 = new ArrayList(); 來宣告一個屬於ArrayList集聚類別的物件(以下簡稱聚集物件),而所有加入ArrayList的物件,都是屬於Object類別的物件。 泛型 (2/5) 而在物件取出時則必須以轉型(casting)的方式才可正確使用,而這使得型別檢查(type checking)無法在編譯時期進行,必須等到執行時期才可以進行(此時若出現錯誤,則會引發例外)。 我們可以使用如ArrayListString 清單 = new ArrayListString();來宣告一個屬於ArrayList類別的聚集物件,其中的 符號是借用自C++語言中Standard Template Library (STL)中的用法。 泛型 (3/5) 在上例中我們在 中填入String類別,這很明確的表示我們要加入的物件是屬於String類別的。如此,可以方便編譯器在編譯時期即進行型別檢查,此時若有錯誤發生,則在編譯時期就可以加以修正。 另外,我們在取用加入的物件時不需要再經過轉型的動作,這使得程式設計方便了許多。 泛型 (4/5) 以下的範例程式中示範了泛型的使用: 泛型 (5/5) 程式執行結果 自動裝箱與拆箱 (1/2) 在Java語言聚集物件中(如範例程式附5-1中屬於ArrayList類別的物件清單1及清單2),只能夠將參考型別資料(也就是物件)加入其中。 要將基本型別資料放入到聚集物件中,就要將該資料以包裝類別(wrapper, 如Float類別)包裝成物件之後才能加入,這個動作稱為boxing 。 讀者在編寫程式時可以略去裝箱與拆箱的程式片段,這不但可以縮減程式碼的長度並且可以加快程式碼的開發。 自動裝箱與拆箱 (2/2) 以下的範例程式搭配泛型的使用展示自動裝箱與拆箱的功能。 程式執行結果 增強的 for 迴圈敘述 (1/5) 在Java 5.0 中新增了for-each/in迴圈敘述,其語法如下所述: for (變數宣告 : 陣列或Iterable物件) 敘述區塊 若我們將上述語法中的for關鍵字讀為for each,將冒號(:)讀為in,則有助於了解上述語法的涵義。 增強的 for 迴圈敘述 (2/5) 我們使用以下的程式片段來說for-each/in迴圈敘述的用法: int[] 陣列1={31,29,31,30,31,30,31,31,30,31,30,31}; String[] 陣列2= {星期一,星期二,星期三,星期四,星期五,星期六,星期天}; for (int i: 陣列1) System.out.print(i+ ); for (String s: 陣列2) System.out.print(s+ ); 增強的 for 迴圈敘述 (3/5) 上述的程式片段的第一個for迴圈的意思為對每一個在陣列1中的整數元素i執行System.out.println(i+“ ”)敘述;而第二個for迴圈的意思為對每一個在陣列2中的String物件元素s執行System.out.println(s+“ ”)敘述。 其執行結果應為: 31 29 31 30 31 30 31 31 30 31 30 31 星期一 星期二 星期三 星期四 星期五 星期六 星期天 增強的 for 迴圈敘述 (4/5) 我們接著再使用以下的範例程式來說明for-each/in迴圈與Iterable物件的配合使用。 增強的 for 迴圈敘述 (5/5) 程式執行結果 C風格的輸出 (1/6) Java 5.0 在java.util.Formatter類別中開始支援C風格的輸出,除了使用屬於Formatter類別的物件配合System.out.println()方法輸出之外,還可以直接使用類似C語言printf函數的System.out.printf()方法。 System.out.printf(”控制字串”, 運算式1, 運算式2, ...);
您可能关注的文档
- F第五章 魏晋南北朝时期的教育.ppt
- GB150及压力容器设计基础.ppt
- GB50236《《现场设备 工业管道焊接工程施工质量验收规范 》.ppt
- GB150 2011《压力容器》宣贯.ppt
- GB50500013建设工程工程量清单编制方法及清单计价讲义.ppt
- GC 2010维护操作指南.ppt
- GBT50319013(建设工程监理新旧规范对比).ppt
- GB50203011最新砌体结构工程施工质量验收规范.ppt
- GCMS维护知识.ppt
- GE培训资料 反渗透技术介绍.ppt
- 人教版九年级英语全一册单元速记•巧练Unit13【速记清单】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit9【速记清单】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit11【速记清单】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit14【单元测试·提升卷】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit8【速记清单】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit4【单元测试·提升卷】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit13【单元测试·基础卷】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit7【速记清单】(原卷版+解析).docx
- 苏教版五年级上册数学分层作业设计 2.2 三角形的面积(附答案).docx
- 人教版九年级英语全一册单元速记•巧练Unit12【单元测试·基础卷】(原卷版+解析).docx
文档评论(0)