提供: Minecraft Modding Wiki
移動先: 案内検索
(リンクの更新、説明の追加、推敲)
 
1行目: 1行目:
 
==Guava概要==
 
==Guava概要==
 
<p>
 
<p>
 GuavaはGoogleが提供しているJavaの追加ライブラリ群である. 追加パッケージは以下のとおり. [http://docs.guava-libraries.googlecode.com/git/javadoc/overview-summary.html Javadoc]
+
 GuavaはGoogleが提供しているJavaの追加ライブラリ群である。追加パッケージは以下のとおり。[http://google.github.io/guava/releases/snapshot-jre/api/docs/ Javadoc]
 
</p>
 
</p>
 
{|class="wikitable" style="border-width:1px 1px 1px 1px; border-color:black; border-style:solid; "
 
{|class="wikitable" style="border-width:1px 1px 1px 1px; border-color:black; border-style:solid; "
 
|+ style="background:#ddd;text-align:left;padding:0 0 0 2px;"|パッケージ一覧
 
|+ style="background:#ddd;text-align:left;padding:0 0 0 2px;"|パッケージ一覧
 
|com.google.common.annotations
 
|com.google.common.annotations
|アノテーションの追加
+
|アノテーション群の追加。
 
|-
 
|-
 
|com.google.common.base
 
|com.google.common.base
|基礎となるユーティリティの追加, 文字列操作やnullチェック機構など.
+
|基礎となるユーティリティの追加。文字列操作やnullチェック機構など。
 
|-
 
|-
 
|com.google.common.cache
 
|com.google.common.cache
|キャッシュに関するユーティリティの追加.
+
|キャッシュに関するユーティリティの追加。
 
|-
 
|-
 
|com.google.common.collect
 
|com.google.common.collect
|コレクションの追加
+
|コレクション群の追加。
 
|-
 
|-
 
|com.google.common.eventbus
 
|com.google.common.eventbus
|
+
|イベントモデルの実装。[[Minecraft Forge Eventシステム概要|Minecraft ForgeのEventシステムはこれ]]。
 
|-
 
|-
 
|com.google.common.hash
 
|com.google.common.hash
|
+
|ハッシュに関するユーティリティの追加。
 
|-
 
|-
 
|com.google.common.io
 
|com.google.common.io
|入出力APIの追加
+
|入出力APIの追加。
 
|-
 
|-
 
|com.google.common.math
 
|com.google.common.math
|
+
|計算についてのユーティリティの追加。
 
|-
 
|-
 
|com.google.common.net
 
|com.google.common.net
|
+
|ネットワーク処理に関するユーティリティの追加。
 
|-
 
|-
 
|com.google.common.primitives
 
|com.google.common.primitives
|プリミティブ型に対するユーティリティの追加
+
|プリミティブ型に対するユーティリティの追加。
 
|-
 
|-
 
|com.google.common.reflect
 
|com.google.common.reflect
|リフレクションに関するユーティリティの追加.
+
|リフレクションに関するユーティリティの追加。
 
|-
 
|-
 
|com.google.common.util.concurrent
 
|com.google.common.util.concurrent
|
+
|並行処理に関するユーティリティの追加。
 
|}
 
|}
  
49行目: 49行目:
 
</source>
 
</source>
 
<p>
 
<p>
 new ArrayList<String>...という冗長な表記を無くすと同時に, 初期化も可能.
+
 new ArrayList<String>...という冗長な表記を無くすと同時に初期化も可能。
 
</p>
 
</p>
  
58行目: 58行目:
 
</source>
 
</source>
 
<p>
 
<p>
 Listsと同様.
+
 Listsと同様。
 
</p>
 
</p>
  
66行目: 66行目:
 
</source>
 
</source>
 
<p>
 
<p>
 重複を許すSet. 内部にカウンタを持ち, 重複要素が追加されるとカウンタが増加する. 頻度を調べるときに使う.
+
 重複を許すSet。内部にカウンタを持っていて、重複要素が追加されるとカウンタが増加する。頻度を調べるときなどに使う.
 
</p>
 
</p>
  
75行目: 75行目:
 
</source>
 
</source>
 
<p>
 
<p>
  Listsと同様.
+
  Listsと同様。
 
</p>
 
</p>
  
83行目: 83行目:
 
</source>
 
</source>
 
<p>
 
<p>
 ありそうでなかった双方向map, bimap.get(key)でfirstをキー, secondが値. bimap.inverse().get(key)でsecondがキー, firstが値になる.
+
 ありそうでなかった双方向map。bimap.get(key)でfirstがキーでsecondが値になり、bimap.inverse().get(key)でsecondがキーでfirstが値になる。
 
</p>
 
</p>
  
91行目: 91行目:
 
</source>
 
</source>
 
<p>
 
<p>
 キーの重複が許されるMap. 重複要素はgetしたときにListで一括して取得できる.
+
 キーの重複が許されるMap。重複要素はgetしたときにListで一括して取得できる。
 
</p>
 
</p>

2018年1月7日 (日) 12:04時点における最新版

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で一括して取得できる。