在PowerShell中的哈希表

5

我正在使用PowerShell开发一个应用程序,将变量存储在哈希表中。如何保持哈希表的顺序?我希望顺序与填充哈希表时相同。

3个回答

8

哈希表本质上不维护值的顺序。

网络上已经有一些解决方法了。请查看以下链接:

http://www.tellingmachine.com/post/2009/01/When-PowerShell-hash-table-magic-backfires.aspx

http://huddledmasses.org/powershell-and-hashtable-oddities/

或者尝试其他方法。

PS C:\WINDOWS\system32> $OrderedList = New-Object System.Collections.Specialized.OrderedDictionary
PS C:\WINDOWS\system32> $OrderedList
PS C:\WINDOWS\system32> $OrderedList.Add("Name","Ravi")
PS C:\WINDOWS\system32> $OrderedList.Add("Age","30")
PS C:\WINDOWS\system32> $OrderedList

Name                           Value
----                           -----
Name                           Ravi
Age                            30

我不想对哈希表进行排序! - RRR
当我将变量插入哈希表时,它们的位置会改变。 - RRR

3

2

哈希表不保持顺序。如果您想要顺序,那么您需要使用 System.Collections.Specialized.OrderedDictionary。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接