Google Java編程庫Guava介紹
本系列想介紹下Java下開源的優秀編程庫--Guava[ˈgwɑːvə]。它包含了Google在Java項目中使用一些核心庫,包含集合(Collections),緩存(Caching),併發編程庫(Concurrency),經常使用註解(Common annotations),String操做,I/O操做方面的衆多很是實用的函數。Guava須要JDK1.6及以上版本。html
使用這些開源的類庫,幫助很是大,可以節約你的寶貴時間,減小你出錯的可能,讓你把時間都集中在處理本身獨特的業務邏輯上。同時能夠多看看這些優秀的開源庫,向他們學習,可以幫助你設計更好的API,讓你的代碼更易讀,更整潔,更簡單,由於這些API自身就是很好的例子。java
Guava庫是按照Joshua Bloch的 Effective Java: 2nd Edition來寫的,不可變性(不可變的集合,CharMatcher
,Joiner
, Splitter
等),構造者模式(ImmutableList.builder()
, Joiner
, Ordering
等),範型等隨處可見,使用工廠而不是構造函數(Maps.newHashMap()
),鍾情於組合而不是繼承(ForwardXXX這類集合)。linux
若是你是使用Maven來做Java/Android項目管理,能夠在pom.xml中dependencies
下添加對Guava的依賴,而後在IntelliJ IDEA從新導入(Reimport)這個項目,讓Maven下載Guava對應版本的jar包,就能夠使用Guava提供的衆多API了。若是在IntelliJ IDEA中跳轉到了Guava的代碼中,能夠使用右上角提示的"Download Source"來下載對應的源碼。git
<dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> <version>19.0</version> </dependency>
本系列目錄以下,目前只寫了1,2後續會逐漸補上:github
- 集合(Collection)相關的API
- 實用的工具類
- 緩存(Cacheing) API
- 併發編程(Concurrency)
參考資料:
Guava wiki
Guava Github
Friends of Guava
web
評論
#1樓 2016-01-20 09:43Walle
#2樓[樓主] 2016-01-20 12:50Jack47