Switch 本是多路分支的关键字,但是在Powershell中由于Switch支持集合,所以也可以使用它进行循环处理。下面举两个例子。
第一个将Foreach循环转换成Switch循环:

复制代码 代码如下:
#使用Foreach循环
$nums=10..7
foreach($n in $nums)
{
    "n=$n"
}
n=10
n=9
n=8
n=7
 
#使用Switch循环
$nums = 10..7
Switch ($nums)
{
Default { "n= $_" }
}
 
n= 10
n= 9
n= 8
n= 7

有时对集合的处理,在循环中还须条件判断,使用Switch循环可以一部到位,例如:

复制代码 代码如下:
$nums = 10..7
Switch ($nums)
{
    {($_ % 2) -eq 0} {"$_ 偶数"}
    {($_ % 2) -ne 0} {"$_ 基数"}
}
 
10 偶数
9 基数
8 偶数
7 基数

PowerShell数组与switch语句,PowerShell中数组可以与switch语句结合,产生意想不到的效果。
PowerShell中数组可以与switch语句结合,产生意想不到的效果。

先看看例子:

复制代码 代码如下:
$myArray = 1,5,4,2,3,5,2,5
Switch ( $myArray ) {
 1 { 'one' }
 2 { 'two' }
 3 { 'three' }
 4 { 'four' }
 5 { 'five' }
}

数组中的所有元素都是在1,2,3,4,5这个范围的。通过一个switch语句,把每个数字做一个翻译。
在switch之后会自动输出,所以,最终的结果就成了:

复制代码 代码如下:
one
five
four
two
three
five
two
five

这是一个很新奇的效果,先记录在这里,后面有需要再来深度挖掘它。

标签:
Windows,Powershell,Switch,循环

免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
内蒙古资源网 Copyright www.nmgbbs.com

评论“Windows Powershell Switch 循环”

暂无“Windows Powershell Switch 循环”评论...

RTX 5090要首发 性能要翻倍!三星展示GDDR7显存

三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。

首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。

据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。