.NETにはSortedDictionaryというオブジェクトがあります...これはJavaで何ですか?私はまた、JavaコードでEnumeration
(要素の)を取得することができる必要があります。だから、私はすべてのキーを反復することができます。Javaの.NET SortedDictionaryと同等のものは何ですか?
私はそれがTreeMapだと思いますか?しかし、私はそれが公開されていると考えていないEnumeration
?
アイデア?
.NETにはSortedDictionaryというオブジェクトがあります...これはJavaで何ですか?私はまた、JavaコードでEnumeration
(要素の)を取得することができる必要があります。だから、私はすべてのキーを反復することができます。Javaの.NET SortedDictionaryと同等のものは何ですか?
私はそれがTreeMapだと思いますか?しかし、私はそれが公開されていると考えていないEnumeration
?
アイデア?
TreeMap
が適切です。すべてのキー(または値)のコレクションについては、Map
はkeySet()
とvalues()
を公開します。
EDIT(コードタグで質問に答える)あなたはMap<String, Object>
を持っていると仮定すると:
for (String key : map.keySet()) {
System.out.println(key); // prints the key
System.out.println(map.get(key)); // prints the value
}
ます。また、キー - >値のペアを反復処理するために、代わりにkeySet()
またはvalues()
のentrySet()
を使用することができます。
TreeMap
は、おそらくあなたが見つけることに近いものです。
あなたはTreeMap.keySet();
を呼び出し、返されたセットの反復処理を行うことにより、キーを反復処理することができます:
// assume a TreeMap<String, String> called treeMap
for(String key : treeMap.keySet())
{
string value = treeMap[key];
}
それは相当のようになります。
// assume a SortedDictionary called sortedDictionary
foreach(var key in sortedDictionary.Keys)
{
var value = sortedDictionary[key];
}
// assume TreeMap<String, String> called treeMap
for (Map.Entry<String, String> entry : treeMap.entrySet())
{
String key = entry.getKey();
String value = entry.getValue();
}
次の.NETコードに相当する:あなたが必要なもの
// assume SortedDictionary<string, string> called sortedDictionary
foreach(KeyValuePair<string, string> kvp in sortedDictionary)
{
var key = kvp.Key;
var value = kvp.Value;
}
treeMap [key]は現在のところは見つからない構文砂糖ですJavaのバージョン。 treeMap.get(key)を使うべきです。 –
のSortedMap(のTreeMap)のentrySet()方法です。
TreeMapを反復処理する方法http://stackoverflow.com/questions/1318980/how-to-iterate-over-a-treemap – Casey