web-dev-qa-db-ja.com

配列の長さをカウントし、要素が1つだけの場合は1を返します

$cars = "bmw","audi","volvo","vw"
echo $cars.length

4を返しますが、

$cars = "bmw"

文字をカウントするため、3を返します。

配列に項目が1つしか含まれていない場合に1を返す方法はありますか?

20
Sune

その他のオプション:

  1. コンマ演算子を使用して配列を作成します。

    $cars = ,"bmw"
    $cars.GetType().FullName
    # Outputs: System.Object[]
    
  2. 配列部分式構文を使用します。

    $cars = @("bmw")
    $cars.GetType().FullName
    # Outputs: System.Object[]
    

オブジェクト配列が必要ない場合は、希望するタイプにダウンキャストできます。文字列配列。

 [string[]] $cars = ,"bmw"
 [string[]] $cars = @("bmw")
29
Andy Arismendi

_echo $cars.length_と書く代わりにecho @($cars).lengthと書く

15
jon Z

次のように配列を宣言します:

$car = array("bmw")

[〜#〜] edit [〜#〜]

今powershell構文で:)

$car = [array]"bmw"
7
Vikram