第十二屆 佳作

software-dev
新手也能懂的 Kotlin Collection 賞玩門道
聖佑

系列文章

DAY 21

第二十一天:Collection 操作之聚合

在做 Collection 操作時,還有一個很常見的情境,就是要將 Collection 內所有元素做運算,最後回傳「一個值」,這種操作我們就統一稱做聚合(Ag...

DAY 22

第二十二天:Collection 差異及相互轉型

在前面的章節裡,我們討論了如何建立 Collection,以及操作它們的各種方式。Collection 裡的四大類別雖然看似相似,但實則有些微的差異。在這個章節...

DAY 23

第二十三天:深入 Collection 核心 - Range 與 Progression

在前面的章節,我們討論的主題都是如何「應用」Collection 的各種功能,但身為一位 Kotlin 開發者,一定會好奇這些標準函式庫是怎麼實作出來的。因此,...

DAY 24

第二十四天:深入 Collection 核心 - Sequence

經過前面這麼多章的說明,大家應該已經瞭解到用 Collection 處理資料的方便之處,我們可以把要處理的資料分成多個步驟,每一個步驟做一件事,每一件事的語義和...

DAY 25

第二十五天:深入 Collection 核心 - 效能評估

在上一章裡我們提到 Sequence<T> 這個跟 Iterable<T> 用起來很像,但實際行為有點不同的物件。我們可以把 Itera...

DAY 26

第二十六天:深入 Collection 核心 - 泛型

在前幾章的程式碼裡,常常會出現 <T> 這樣的標記,這個 T 代表任一型別(Type),而這個型別是可以讓外部決定的。這種標記稱為泛型(Generi...

DAY 27

第二十七天:深入 Collection 核心 - Lambda

在前面一系列的 Collection 操作章節裡,你會發現只要能客製化操作行為的 method,都是透過讓你傳入一個 Lambda 的方式達成。到底什麼是 La...

DAY 28

第二十八天:深入 Collection 核心 - Extension

上一個章節我們在探索 forEach() 原始碼的時候,除了使用到泛型、Lambda、inline 等技巧外,其實還有用到 Kotlin 的 Extension...

DAY 29

第二十九天:活用 Collection - Scope Function

前面的章節從 Collection 的基礎語法到核心程式碼都看了一輪,接下來想討論一下 Collection 可以如何活用? 我們之所以用 Collection...

DAY 30

第三十天:活用 Collection - 用 kscript 做資料處理

眾所皆知 Kotlin 是一個需要編譯的程式語言,所以每次一更動程式就必須重新編譯一次。雖然編譯式的語言對程式正確性和效能都有不錯的幫助,但假如你是拿 Kotl...