2010-11-03 127 views
2

我有一些Java代碼,我想將它翻譯成C#。 srcParams是一個Hashtable。如何將Java枚舉轉換爲C#?

這是Java代碼:

for (Enumeration keys = srcParams.keys(); keys.hasMoreElements()) { 
    key = keys.nextElement(); 
    destParams.Add(key, srcParams[key]); 
} 

這是我嘗試在C#

IEnumerator key = srcParams.Keys.GetEnumerator(); 
while (key.MoveNext()) { 
    destParams.Add(key, srcParams[key]); 
} 

你能告訴我,如果這是正確的嗎?

回答

3
foreach(var key in srcParams.Keys) { 
    destParams.Add(key, srcParams[key]); 
} 

你有什麼是緊挨是好的,只是重命名變量並添加使用的IEnumerator.Current

IEnumerator enumerator = srcParams.Keys.GetEnumerator(); 
while (enumerator.MoveNext()) { 
    object key = enumerator.Current; 
    destParams.Add(key, srcParams[key]); 
}