我已經繼承了一個團隊和一個(Java)代碼庫。你推薦什麼Java Collections庫?
代碼庫使用了很多明確的for each
循環。我想用Commons Collections Transformers和Predicates以及它的收集和轉換方法替換那些(編輯:在未來的代碼中)。
但是,Commons Collection不是通用的。我的代碼庫的其餘部分,無論它缺少什麼,我都不想引入大量的投射。
因此,我正在尋找Commons-Collections with Generics(http://sourceforge.net/projects/collections/)和Guava(以前稱爲Google Collections)(http://code.google.com/p /番石榴的庫/)。
問題一:這些庫中的一個或兩個是否被普遍認爲對生產有用?你在生產中使用嗎?
問題二:這兩個問題,你建議?任何使用過的人的答案都很棒,所有使用這兩者的人的答案都會更好!
最後,我的團隊包括中高級承包商和Java中級和初級員工(編輯:但具有多年非OO編程經驗)的組合。所以我不想介紹一個以上的集合庫,而且我確實希望有一個對我的團隊來說不會太難。
謝謝!
編輯:我想替換顯式循環,因爲樣板的數量模糊和壓倒實際的業務代碼。我有嵌套的循環調用嵌套循環的函數,所有這些都是做單行的事情。通過適當的介紹和培訓,我覺得我的團隊會發現收集/變壓器/謂詞方法更清晰,更清晰,寫得更快,並且更易於閱讀。
Commons Collections如果不希望每個人都跳到Guava,那麼他們確實需要拿出一個Java5版本。我並不介意在Commons Lang中使用泛型和可變參數,但對於收藏庫來說,這是非常重要的。 – Thilo 2010-10-13 03:07:46
相關:[Commons Collections vs Google Collections](http://stackoverflow.com/questions/1444437/apache-commons-vs-google-collections)。仍然是實際的IMO。也看[這部電影](http://www.youtube.com/watch?v=ZeO_J2OcHYM)。 – BalusC 2010-10-13 03:08:11
爲了替換代碼或者因爲你今天每個''風格都有缺陷,你在替換代碼嗎? – 2010-10-13 03:09:32