PowerShell 如何将数组中的字符串元素拼接后存入变量
PowerShell 字符串数组高效拼接方案
实现方案
- 方法1:使用
-join运算符(PowerShell 原生首选方案)
无需手动枚举数组索引,直接用无分隔符的-join即可一次性拼接所有元素,代码简洁且性能远高于逐个加号拼接:
执行后$letters = @("a","b","c","d","e") $var = -join $letters # 等价写法:$var = $letters -join ''$var的取值为abcde,完全匹配需求。 - 方法2:调用.NET 静态方法
[string]::Concat()
习惯用.NET 基础库的场景可以用该方案,性能和-join一致:$var = [string]::Concat($letters)
方案优势
- 不受数组长度影响,不需要随数组元素数量修改代码,完全避免索引漏写、错写的问题
- 内部做了专门的性能优化,拼接大数组时不会像逐个
+拼接那样生成大量临时字符串对象,内存开销、执行效率都有明显优势 - 自动兼容数组内的非字符串元素,会默认调用元素的
ToString()方法转换为字符串后再拼接
内容的提问来源于stack exchange,提问作者Dstr0
相关产品推荐
相关产品推荐

