14

私はPowerShellを初めて使用し、HashTableの長さを取得しようとしています(forループで使用するため)が、HashTableの長さを取得して何も出力できないようです。

$user = @{}
$user[0] = @{}
$user[0]["name"] = "bswinnerton"
$user[0]["car"] = "honda"

$user[1] = @{}
$user[1]["name"] = "jschmoe"
$user[1]["car"] = "mazda"

write-output $user.length   #nothing outputs here

for ($i = 0; $i -lt $user.length; $i++)
{
    #write-output $user[0]["name"]
}
4

3 に答える 3

26

@{}HashTable を@()宣言し、Array を宣言します

使用できます

$user.count

lengthあなたのを見つけるためにHashTable

もしあなたがそうするなら:

$user | get-member

オブジェクトのすべてのメソッドとプロパティを表示できます。

$user.gettype()

あなたが持っているオブジェクトのタイプを返します。

于 2012-11-09T16:31:06.470 に答える
4

$userはハッシュ テーブルであるため、代わりに使用する必要があります$user.count

于 2012-11-09T16:30:20.543 に答える
1

それは配列ではなくハッシュテーブルです。.count代わりに使用してください:

write-output $user.count
于 2012-11-09T16:34:49.483 に答える