脚本专栏 
首页 > 脚本专栏 > 浏览文章

PowerShell中定义多个变量并赋值的例子

(编辑:jimmy 日期: 2024/11/26 浏览:3 次 )

所谓赋值语句,小编在最早学C语言时就知道那就是“a=1;”。这么多年来,虽然语言在变,但赋值语句基本没变过。但今天在看一串PowerShell代码的时候,这种理念被推翻了。小编看到了多变量同时赋值的语句。

小编看到的语句是这样的:
复制代码 代码如下:$a[0],$a[1]=$a[0],$a[1];
大家来猜猜它是什么意思?

其实很好猜,第一眼看上去就像是把$a[0]和$a[1]这两个数组元素颠倒。而事实上的效果也是这样的。难道说这就是两个变量互换值的语句吗?我们知道在传统的编程语言里面,要把两个变量的值交换,至少需要三个语句,还需要一个中间变量的。比如要把a与b的值交换,那么代码应该这样写:
复制代码 代码如下:c=a;a=b;b=c;

这里的c是新增加出来的一个变量。这样看来,PowerShell还真TMD强大啊!

小编还异想天开的做了一些尝试,发现原来这个语法不仅仅颠倒两个值那么简单。比如:
复制代码 代码如下:
PS> $a=1,2,3
PS> $a[0],$a[1],$a[2]=$a[1],$a[2],$a[0];
PS> -join $a
231
看见没有,把数组元素的值,转了一圈。

小编还做了这样一个测试:
复制代码 代码如下:PS> $a, $b=1,2
PS> $a
1
PS> $b
2

相当于是对照等号的前后,按顺序逐个赋值。很好理解吧!再看看下面这个:
复制代码 代码如下:PS C:\Users\hong> $a, $b=1,2,3
PS C:\Users\hong> $a
1
PS C:\Users\hong> $b
2
3
哈哈,这个有趣了。前面是两个变量,后面是三个值。那PowerShell会把它们怎么办呢。根据结果所示,$a赋值了1,$b被当成了数组,赋值了2和3。

所以小编把这个语法称之为“多变量同时赋值”,就是把多个变量同时赋值,当然赋值中存在一些细节,已经在上面的例子中展示了。

最后有人一定想问,如果变量个数多于值的个数,会是什么样的结果呢?呵呵,看看:
复制代码 代码如下:PS C:\Users\hong> $a, $b,$c,$d=1,2,3
PS C:\Users\hong> $d
PS C:\Users\hong>

上一篇:PowerShell中把IP转换为长整形数字的方法
下一篇:PowerShell统计文件夹下文件个数的方法
一句话新闻
一文看懂荣耀MagicBook Pro 16
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16.
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?
友情链接:杰晶网络 DDR爱好者之家 南强小屋 黑松山资源网 白云城资源网 网站地图 SiteMap