1
A
答えて
3
あなたは簡単にHashtable
int
のにそれらを置くことができます。次のメソッドは、配列内のインデックスをキーとして使用します。
float[] arr;
Hashtable<Integer, Float> table = new Hashtable<Integer, Float>(arr.length);
for (int i = 0; i < arr.length; i++) {
table.put(i, arr[i]);
}
0
3
アレイはマップに直接対応することはできません。それはセットに対応することができます。
new HashSet(Arrays.asList(array))
0
jjnguyの答えの彼/彼女の要件のOPの明確化を考えると、ここでのfloat配列内の一意の値の発生をカウントするO(n)
(償却)方法があります:実際に
float[] values;
Map<Float, Integer> occurrences = new HashMap<Float, Integer>();
for (float f : values) {
int count = occurrences.containsKey(f) ? occurrences.get(f) : 0;
occurrences.put(f, count+1);
}
//then find multiple occurrences by finding entries with a value > 0
for (Entry<Float, Integer> entry : occurrences.values()) {
if (entry.getValue() > 1) {
System.out.println("Duplicate: " + entry.getKey());
}
}
それは通常臭いです浮動小数点を何かの鍵として使うか、浮動小数点数を離散的な値であるふりをする形で使用するかを指定します。浮動小数点型は、通常、「連続」値をシミュレートするために使用されます。すべてのインテントと目的で、7.000000000012は7.000000000013と同じとみなされます。
0
配列に浮動小数点数がいくつあるか知りたい場合、最良の解決策はマルチセット(通常はMap<T, Integer>
の上に構築されます)です。
float[] floats = ...
Multiset<Float> multiset = HashMultiset.create(Floats.asList(floats));
for (Multiset.Entry<Float> entry : multiset.entrySet()) {
Float value = entry.getElement();
int count = entry.getCount();
...
}
関連する問題
- 1. c#.Netでハッシュテーブルの配列を作成できますか?
- 2. C - メモリを割り当て、ハッシュテーブルの配列に文字列をコピー
- 3. リソース配列やハッシュテーブル
- 4. Javascriptでハッシュテーブルを使用する:適切な配列の配列ですか?
- 5. VB.NET配列/ハッシュテーブルの問題
- 6. 構造体の配列 - ハッシュテーブル
- 7. ハッシュテーブルからn/vペアをコピー
- 8. String []配列からハッシュテーブルにキーと値を追加する[] C#
- 9. オブジェクトから文字列配列にコピーすることができません
- 10. ハッシュテーブルの配列を文字列の配列に変換する方法
- 11. 単一ハッシュテーブルを持つPowershell配列
- 12. C++ char配列のコピーをunsigned char配列に置き換えます。
- 13. ハッシュテーブルにキー/値のペアを追加する(配列内にネストされ、ハッシュテーブルにネストされています)
- 14. Powershellのハッシュテーブルの配列に対するハッシュテーブルのプロパティの比較方法
- 15. デスクトップアプリケーションのデータを配列としてクリップボードにコピーできますか?
- 16. `f2py`でコピーせずにboolean配列を渡しますか?
- 17. Javascriptの多次元配列/ハッシュテーブル
- 18. Powershell convertto-htmlと配列のハッシュテーブル
- 19. 文字列を配列にコピーする
- 20. C#値で配列をコピー
- 21. ハッシュテーブルの配列にハッシュテーブルが含まれているか確認してください
- 22. 配列を逆順にコピー
- 23. JSONデータを配列にコピー
- 24. int配列の内容をJavaのdouble配列にコピーしますか?
- 25. 配列の特定のインデックス値を別の配列にコピーしますか?
- 26. 配列列のコピー
- 27. Powershellで多次元ハッシュテーブル配列を作成する
- 28. コピー配列をjavascript
- 29. コピー配列
- 30. コピーenum配列
あなたが関係する2つの値を持っている場合、ハッシュテーブルのみ意味があります:Guavaで、あなたはこれを行うことができます。 – Pointy
キーとは何ですか? – stacker
ハッシュテーブルは何のために使用されますか?キーと値のペアは何ですか? –