2016-08-19 115 views
0

当为一个变量转换数据类型时,额外的空方括号是做什么的?[数据类型]和[数据类型[]]之间的差异

例如,在定义一个函数中的参数,我注意到铸造的数据类型为参数的这两种方式:

param(
    [string]$computername 
) 

VS:

param(
    [string[]]$computername 
) 

什么用途的第二个例子中的空方括号用于服务?

回答

2

第二个例子中的参数接受一个字符串列表(一个数组),第一个例子中的参数只有一个字符串。

这工作在两种情况下:

-computername 'foo' 

这个工程只是在第二种情况:

-computername 'foo', 'bar' 
+0

尼斯,所以后续的问题:什么[数组]之间的差异,[串[] ]?我假设[数组]可以包含多种类型的数据? –

+0

正确。 '[string []]'是一个字符串数组,'[array]'是一个没有特定元素类型的数组。 –

0

[]表示数组。所以[string[]]$computername将表示一个computername的字符串数组。