原创 《Java 8 in Action》Chapter 12:新的日期和時間API

在Java 1.0中,對日期和時間的支持只能依賴java.util.Date類。同時這個類還有兩個很大的缺點:年份的起始選擇是1900年,月份的起始從0開始。 在Java 1.1中,Date類中的很多方法被廢棄,取而代之的是java.ut

原创 優秀開源項目、博客、書籍彙總

原文:https://blog.fengjx.com 博客、教程 併發編程網 讓天下沒有難學的技術 grokonez 各種軟件開發教程網站,包括前端後端 meituan 美團技術博客 How-To-Ask-Questions-Th

原创 《Java 8 in Action》Chapter 10:用Optional取代null

1965年,英國一位名爲Tony Hoare的計算機科學家在設計ALGOL W語言時提出了null引用的想法。ALGOL W是第一批在堆上分配記錄的類型語言之一。Hoare選擇null引用這種方式,“只是因爲這種方法實現起來非常容易”。雖

原创 《Java 8 in Action》Chapter 10:用Optional取代null

1965年,英國一位名爲Tony Hoare的計算機科學家在設計ALGOL W語言時提出了null引用的想法。ALGOL W是第一批在堆上分配記錄的類型語言之一。Hoare選擇null引用這種方式,“只是因爲這種方法實現起來非常容易”。雖然

原创 《Java 8 in Action》Chapter 9:默認方法

傳統上,Java程序的接口是將相關方法按照約定組合到一起的方式。實現接口的類必須爲接口中定義的每個方法提供一個實現,或者從父類中繼承它的實現。 但是,一旦類庫的設計者需要更新接口,向其中加入新的方法,這種方式就會出現問題。現實情況是,現存

原创 《Java 8 in Action》Chapter 9:默認方法

傳統上,Java程序的接口是將相關方法按照約定組合到一起的方式。實現接口的類必須爲接口中定義的每個方法提供一個實現,或者從父類中繼承它的實現。但是,一旦類庫的設計者需要更新接口,向其中加入新的方法,這種方式就會出現問題。現實情況是,現存的實

原创 《Java 8 in Action》Chapter 8:重構、測試和調試

我們會介紹幾種方法,幫助你重構代碼,以適配使用Lambda表達式,讓你的代碼具備更好的可讀性和靈活性。除此之外,我們還會討論目前比較流行的幾種面向對象的設計模式, 包括策略模式、模板方法模式、觀察者模式、責任鏈模式,以及工廠模式,在結合L

原创 《Java 8 in Action》Chapter 8:重構、測試和調試

我們會介紹幾種方法,幫助你重構代碼,以適配使用Lambda表達式,讓你的代碼具備更好的可讀性和靈活性。除此之外,我們還會討論目前比較流行的幾種面向對象的設計模式, 包括策略模式、模板方法模式、觀察者模式、責任鏈模式,以及工廠模式,在結合L

原创 《Java 8 in Action》Chapter 8:重構、測試和調試

我們會介紹幾種方法,幫助你重構代碼,以適配使用Lambda表達式,讓你的代碼具備更好的可讀性和靈活性。除此之外,我們還會討論目前比較流行的幾種面向對象的設計模式,包括策略模式、模板方法模式、觀察者模式、責任鏈模式,以及工廠模式,在結合Lam

原创 《Java 8 in Action》Chapter 7:並行數據處理與性能

在Java 7之前,並行處理數據集合非常麻煩。第一,你得明確地把包含數據的數據結構分成若干子部分。第二,你要給每個子部分分配一個獨立的線程。第三,你需要在恰當的時候對它們進行同步來避免不希望出現的競爭條件,等待所有線程完成,最後把這些部分

原创 《Java 8 in Action》Chapter 7:並行數據處理與性能

在Java 7之前,並行處理數據集合非常麻煩。第一,你得明確地把包含數據的數據結構分成若干子部分。第二,你要給每個子部分分配一個獨立的線程。第三,你需要在恰當的時候對它們進行同步來避免不希望出現的競爭條件,等待所有線程完成,最後把這些部分

原创 《Java 8 in Action》Chapter 7:並行數據處理與性能

在Java 7之前,並行處理數據集合非常麻煩。第一,你得明確地把包含數據的數據結構分成若干子部分。第二,你要給每個子部分分配一個獨立的線程。第三,你需要在恰當的時候對它們進行同步來避免不希望出現的競爭條件,等待所有線程完成,最後把這些部分結

原创 《Java 8 in Action》Chapter 6:用流收集數據

1. 收集器簡介 collect() 接收一個類型爲 Collector 的參數,這個參數決定了如何把流中的元素聚合到其它數據結構中。Collectors 類包含了大量常用收集器的工廠方法,toList() 和 toSet() 就是其中最常

原创 《Java 8 in Action》Chapter 6:用流收集數據

1. 收集器簡介 collect() 接收一個類型爲 Collector 的參數,這個參數決定了如何把流中的元素聚合到其它數據結構中。Collectors 類包含了大量常用收集器的工廠方法,toList() 和 toSet() 就是其中最常

原创 《Java 8 in Action》Chapter 6:用流收集數據

1. 收集器簡介 collect() 接收一個類型爲 Collector 的參數,這個參數決定了如何把流中的元素聚合到其它數據結構中。Collectors 類包含了大量常用收集器的工廠方法,toList() 和 toSet() 就是其中最常