Java文章列表 | CodeData
top

Java 開發者的函數式程式設計(2)代數資料型態

By caterpillar | 2013/07/19

我們大多熟悉物件導向程式設計,熟悉抽象資料型態(Abstract data type, ADT)。抽象資料型態的模型中封裝了資料結構與實作,僅透露互動時的公開介面;然而,代數資料型態(Algebraic data type)相對地曝露了基本的資料結構及規律性,在函數式程式設計的領域中,代數資料型態是基本元素。

【Guava 教學】(7)Multiset、Multimap 與 BiMap

By caterpillar | 2013/07/18

如果有個清單,想要取得清單中不重複的元素,最快的方式就是使用 JDK 中的 Set。如果不單只是計數,在後續迭代時也想要取得重複元素呢?程式碼當然可以自己撰寫,只不過 Guava 的 Multiset 實作將這些細節都封裝起來了…

Java 開發者的函數式程式設計(1)初探函數式程式設計

By caterpillar | 2013/07/15

如果使用的語言並非函數式語言,你不能不假思索地直接套用函數式設計的所有概念,否則就有可能事倍功半,可讀性與效能都會變差。如果你想進行純函數式程式設計...只有先瞭解函數式設計的本質,才可以讓我們明瞭,如何適當地擷取函數式設計的概念。

【Guava 教學】(6)不可變群集

By caterpillar | 2013/07/11

不可變物件(Immutable object)有許多好處,像是在並行(Concurrent)程式設計時,因為就不用擔心那些執行緒共用競爭的問題; 在面對資料處理問題時,需要一些群集(Collection)物件,像是有序的清單(List)、收集不重複物件的集合(Set)等,這些群集物件若是不可變,那麼就有可能共用資料結構,達到節省時間及空間之目的。

認識 Lambda/Closure(8)方法參考與建構式參考

By caterpillar | 2013/07/09

在 Java 中引人 Lambda 的同時,與現有 API 維持相容性是主要考量之一。除了採用函式介面之外,方法參數(Method reference)在重用現有 API 上也扮演了重要的角色。重用現有的方法實作,可避免到處寫下 Lambda 運算式。

我們的作者

» 全部作者群

熱門技術文章

最新論壇文章