Java 頻道 | CodeData
top

【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 運算式。

Hello JavaFX! Part 3

By Michael | 2013/07/08

現在已經包含在Java SE中的JavaFX 2,應該可以改變大家對Java桌面應用程式的想法,開發人員可以用它建立功能強大的商業應用程式,它在2D與3D繪圖和動畫效果支援,不論是實作的方式或執行的效率,都讓人非常滿意,在認識JavaFX的最後一個部份,就來看看它在繪圖和動畫效的基本作法

【Guava 教學】(5)程式 90% 比率在管理與處理錯誤

By caterpillar | 2013/07/03

語法的簡便,其實只是讓你省去少打幾個字之類的麻煩,不過如果你不知道本質上該如何處理,那麼也是會發生濫用的情況。同樣地,Guava 的 Throwables 看來是省了一些功夫,不過也別亂用, ThrowablesExplained 的說明中,有一些不建議的使用方式,建議你瞭解一下,看看原因…

認識 Lambda/Closure(7)JDK8 Lambda 語法

By caterpillar | 2013/07/02

終於要來介紹 JDK8 Lambda 語法了。在 JDK8 中要表示 (x -> x * 2),基本上,可以寫為以下的形式: (Integer x) -> x + 2

【Guava 教學】(4)實作 toString、equals 與 hashCode 的幫手

By caterpillar | 2013/06/26

除了產生 toString 的幫手之外,Guava 在比較物件時也提供了 Objects.equal,這東西與 JDK7 的 Objects.equals 是相同作用的,如果你使用 JDK6 或之前的版本,則可以試試 Guava 的。怎麼用呢?因為 Objects.equal 蠻簡單的,單純解釋它沒意思,重點還是在於怎麼寫出正確的 equals 比較重要...

認識 Lambda/Closure(6)一級函式與 Lambda 演算

By caterpillar | 2013/06/25

為什麼一級函式也稱為 Lambda?在回答這個問題之前,我們必須認識一下 Lambda 演算(也可以寫成 λ 演算)。簡單地說,在 λ 演算中,函式是僅帶一個參數的運算式。參數也可以接受帶有一個參數的函式。λ 演算中的函式是匿名的。

【Guava 教學】(3)高階排序概念的實現

By caterpillar | 2013/06/20

Guava 看來只是個程式庫,但它實際上包括了不少高階觀念,先前的兩篇文章 從避免使用 null 開始、命名明確的條件檢查,其實也都是在談這些高階觀念,想善用 Guava,瞭解這些觀念是必要的,不然,只是當個程式庫來使用,就沒辦法用得順手,這樣是有點可惜了。

認識 Lambda/Closure(5)Java 的稻草人提案

By caterpillar | 2013/06/18

終於要開始討論 Java 的 Lambda/Closure 了!不過這邊會先討論 2009 年提出的舊草案,討論這份舊草案,有助於我們瞭解為什麼 Lambda/Closure 會演變至今天 JDK8 所採取的形式。

Hello JavaFX! Part 2

By Michael | 2013/06/17

使用Java技術設計一個桌面應用程式的使用者介面,以前都是使用Swing和AWT提供的套件,或許還會搭配一些額外的套件,來加強畫面的設計。在JavaFX 2發佈以後,這些工作都可以使用它來代替舊有的套件,而且有更多的元件和更好的效率。

Java 好書介紹

  • Java SE 7 技術手冊 林信良 著
  • Java SE 7 全方位學習 朱仲傑 著

熱門技術文章

最新論壇文章