Java中的集合類、Lanbda、魯棒性簡述
集合類
在java.util包中提供了一些集合類,常用的有List、Set和Map類,其中List類和Set類繼承了Collection介面。這些集合類又稱為容器,長度是可變的,陣列用來存放基本資料型別的資料,集合用來存放類物件的引用。
List介面、Set介面、Map介面以及Collection介面的主要特徵如下:
Collection介面是List介面和Set介面的父介面,通常情況下不被直接使用。
List介面繼承了Collection介面,List介面允許存放重複的物件,排序方式為按照物件的插入順序。
Set介面繼承了Collection介面,Set介面不允許存放重複的物件,排序方式為按照自身內部的排序規則。
Map介面以鍵值對(key—value)的形式存放物件,其中鍵(key)物件不可以重複,值(value)物件可以重複,排序方式為按照自身內部的規則。
Lambda表示式
其主要作用就是代替匿名內部類的繁瑣語法, 它由三部分組成:
(1) 形參列表。形參列表允許省略形參型別。如果形參列表中只有一個引數,甚至連形參列表的圓括號也可以省略。
(2) 箭頭(→)。必須通過英文中畫線和大於符號組成。
(3)程式碼塊。如果程式碼塊只包含一條語句,Lambda表示式允許省略程式碼塊的花括號,那麼那條語句就不要用花括號表示語句結束。Lambda程式碼塊只有一條return語句,甚至可以省略return關鍵字。Lambda表示式需要返回值,而它的程式碼塊中僅有一套省略了return的語句。Lambda表示式會自動返回這條語句的值。
魯棒性(Robust,即健壯性)
Java在編譯和執行程式時,都要對可能出現的問題進行檢查,以消除錯誤的產生。它提供自動垃圾收集來進行記憶體管理,防止程式設計師在管理記憶體時容易產生 的錯誤。通過整合的面向物件的例外處理機制,在編譯時,Java揭示出可能出現但未被處理的例外,幫助程式設計師正確地進行選擇以防止系統的崩潰。另外, Java在編譯時還可捕獲型別宣告中的許多常見錯誤,防止動態執行時不匹配問題的出現。