Java8 新功能筆記 (4) - Optional

Optional

Optional 是值的容器,只有兩種狀態,不是有值就是沒值。目的是做為 null 的替代方案。Optional 提供工廠方法,將你輸入的值產生為 Optional 物件,這時Optional 物件即為該值的容器,若要取回該值,必須使用 get() 方法。

Java8 新功能筆記 (3) - Stream

Stream

Java 8 新增了一個新的 Stream package 專門用來處理集合(collection),搭配 lambda expression,在處理集合方面變得更加方便。

Java8 新功能筆記 (2) - Lambda expression

Lambda expression

Java 8 新加入的功能 Lambda 表達式,讓你可以將函式做為方法的參數,如果你寫過 JavaScript 應該會覺得有點像。Lambda 有許多的優點,可以簡化匿名內部類別、偵聽器及事件處理等的冗長程式碼,讓它們不只變短也易讀。另外還可以實體化前面介紹的函式介面、並且以更方便的方式操作集合等等。

Java8 新功能筆記 (1) - Functional Interfaces

Functional Interfaces

Java 8 的新功能最讓大家有印象的是 Lambda 表達式,但在使用 Lambda 表達式之前,要先瞭解另一個新的功能,叫做 Functional Interfaces 函式介面。其實它不是新的東西,只是被賦予特定任務,所以重新定義它的名稱及用途。

Core Data 入門 (2)

Core Data

重構,將方法移動到實體中。在 Core Data 入門(1) 的範例中,我們把對資料庫動作的所有程式都寫在 ViewController 裡面,這樣的做法不太好,既然這些動作和 Product 實體有關,那就應該放在它自己身上,任何對 Product 的動作一律由它來處理。

Core Data 入門 (1)

Core Data

什麼是 Core Data ? 在 iOS(OSX) 應用程式中,要儲存資料可以使用資料庫或檔案,以及現在要介紹的 Core Data,所以 Core Data 的用途就是儲存資料。Core Data 是在 OSX 10.4 及 iOS 3.0 之後開始使用,它可以將物件序列化後儲存在 XML、binary(二位元檔)或 SQLite 資料庫。

Swift Optional 的使用

Swift Optional

當宣告一個變數,這個變數預設就是 non-optional (非選擇性)的,換句話說就是指派了一個 non-nil (不可為 nil)的值,也就是這個變數必定有值。假如你指派 nil 值給 non-optional 變數,compiler 就會告訴你不能這麼做。