提供: Minecraft Modding Wiki
Guava概要[編集]
GuavaはGoogleが提供しているJavaの追加ライブラリ群である。追加パッケージは以下のとおり。Javadoc
com.google.common.annotations | アノテーション群の追加。 |
com.google.common.base | 基礎となるユーティリティの追加。文字列操作やnullチェック機構など。 |
com.google.common.cache | キャッシュに関するユーティリティの追加。 |
com.google.common.collect | コレクション群の追加。 |
com.google.common.eventbus | イベントモデルの実装。Minecraft ForgeのEventシステムはこれ。 |
com.google.common.hash | ハッシュに関するユーティリティの追加。 |
com.google.common.io | 入出力APIの追加。 |
com.google.common.math | 計算についてのユーティリティの追加。 |
com.google.common.net | ネットワーク処理に関するユーティリティの追加。 |
com.google.common.primitives | プリミティブ型に対するユーティリティの追加。 |
com.google.common.reflect | リフレクションに関するユーティリティの追加。 |
com.google.common.util.concurrent | 並行処理に関するユーティリティの追加。 |
追加コレクション[編集]
List[編集]
- Lists
List<String> list = Lists.newArrayList("one", "two", "three");
new ArrayList<String>...という冗長な表記を無くすと同時に初期化も可能。
Set[編集]
- Sets
Set<String> set = Sets.newHashSet("one", "two", "three");
Listsと同様。
- Multiset
Multiset<String> multiset = HashMultiset.create();
重複を許すSet。内部にカウンタを持っていて、重複要素が追加されるとカウンタが増加する。頻度を調べるときなどに使う.
Map[編集]
- Maps
Map<Key, Value> map = Maps.newHashMap(k, v, k, v, ...);
Listsと同様。
- BiMap
BiMap<first, second> bimap = HashBiMap.create();
ありそうでなかった双方向map。bimap.get(key)でfirstがキーでsecondが値になり、bimap.inverse().get(key)でsecondがキーでfirstが値になる。
- Multimap
Multimap<Key, Value> multimap = ArrayListMutlimap.create();
キーの重複が許されるMap。重複要素はgetしたときにListで一括して取得できる。