5

在 powershell 中,如何创建一个包含字符串作为键和字符串列表作为值的哈希映射?

例如,在 Java 中,可以执行以下操作:

Map<String, List<String> myMap = new HashMap<String, List<String>();

powershell 是否包含此功能?

我试过了:

$myMap = @{ [string], New-Object Collections.Generic.List[string] } 

但这没有用。

4

2 回答 2

5
$myMap = @{ "Michigan"="Detroit"; "California" = "Sacremento","Hollywood";"Texas"="Austin" } 

请注意加利福尼亚如何为其键分配两个值。另请注意,如果您尝试将其导出到 csv,那么您将如何遇到麻烦,枚举器会跳过数组值并将“System.Object []”插入到 csv 文件中,这可能是应该的。

更新

要动态更新列表,

$myMap.California += "Compton"
于 2013-10-08T14:54:59.063 回答
3

我想到了。

$myList = New-Object Collections.Generic.List[string]
$myList.Add("one")
$myList.Add("two")
$myList.Add("three")

$myHash = @{ }
$myHash.Add("list", $myList)
于 2013-10-08T15:05:31.653 回答