如何将Java枚举转换为C#?

我有一些Java代码,我想把它翻译成C#。 srcParams是一个Hashtable。

这是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]); } 

你能告诉我它是否正确吗?

 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]); }