Есть ли разница между этими двумя операторами создания массива?
Хотя я не уверен на 100% (это зависит от внутренностей PowerShell), разница может быть следующей: "This", "Is", "a", "cat"
создает массив.@("This", "Is", "a", "cat")
создает тот же массив и , затем применяет к нему оператор @ () (в данном случае это явно избыточная операция).
Использование, например, этого профилировщика мы можем видеть, что второе выражение довольно медленное (14% или около того), так что мое предположение может быть правильным.В идеале интерпретатор кода PowerShell может обрабатывать эти два выражения одинаково, но, вероятно, это не так.
См. Также раздел справки (конец, об операторах @()
и ,
)
help about_operators