6

他のクラスなどを含めることなくAndroidで動作するJava用のマルチマップの実装はどこにありますか。私が見つけた実装はすべて、他のものを必要とする他のものを必要とし、すぐに面倒になります。私はC++からプロジェクトを移植していて、Javaを初めて使用します(そしてこのプロジェクトも同様に、動作させながら可能な限り同一に保つようにしています)ので、参照や例は素晴らしいでしょう。

4

3 に答える 3

16

マップとリストを使用してマルチマップを作成できます。整数をクラスタイプTのリストに関連付けたいとします。次のコードを使用します。

Map<Integer, List<T>> myMultiMap = new HashMap<Integer, List<T>>();

それは厄介になる可能性がありますが、これはあなたが探しているものをあなたに与えるはずです。

もう1つのオプションは、GuavaライブラリのMultimap実装を使用することです。

于 2010-11-05T19:19:46.823 に答える
5

ApacheCommonsCollectionライブラリを探しているようです。そこにMultiMapクラスがあります。私はまだそれを自分でテストしていないので、それが機能することを約束することはできませんが、それはあなたのプロジェクトにぴったりだと思います。

JavaにはMultiMap関数がないため、他の人がそれを含むライブラリを作成しています。ただし、知識レベルが十分に高い場合は、自分で実装を試みることができますが、それにはJavaの経験が必要です。したがって、最善の策は、使用方法を学び、必要に応じて、Androidで使用するためにライブラリを適応させることです。

于 2010-11-05T19:09:55.170 に答える
2

コードサイズが気になる場合は、ユーティリティライブラリにマルチマップを追加しました:http: //greenrobot.org/2015/12/11/multimaps-in-greenrobot-common-2-2/

jarは100kをはるかに下回っています。これは、Androidの65Kメソッドの制限を考慮すると便利です。

于 2015-12-11T08:41:48.147 に答える