所謂賦值語(yǔ)句,小編在最早學(xué)C語(yǔ)言時(shí)就知道那就是“a=1;”。這么多年來(lái),雖然語(yǔ)言在變,但賦值語(yǔ)句基本沒(méi)變過(guò)。但今天在看一串PowerShell代碼的時(shí)候,這種理念被推翻了。小編看到了多變量同時(shí)賦值的語(yǔ)句。
小編看到的語(yǔ)句是這樣的:
其實(shí)很好猜,第一眼看上去就像是把$a[0]和$a[1]這兩個(gè)數(shù)組元素顛倒。而事實(shí)上的效果也是這樣的。難道說(shuō)這就是兩個(gè)變量互換值的語(yǔ)句嗎?我們知道在傳統(tǒng)的編程語(yǔ)言里面,要把兩個(gè)變量的值交換,至少需要三個(gè)語(yǔ)句,還需要一個(gè)中間變量的。比如要把a(bǔ)與b的值交換,那么代碼應(yīng)該這樣寫(xiě):
這里的c是新增加出來(lái)的一個(gè)變量。這樣看來(lái),PowerShell還真TMD強(qiáng)大??!
小編還異想天開(kāi)的做了一些嘗試,發(fā)現(xiàn)原來(lái)這個(gè)語(yǔ)法不僅僅顛倒兩個(gè)值那么簡(jiǎn)單。比如:
小編還做了這樣一個(gè)測(cè)試:
相當(dāng)于是對(duì)照等號(hào)的前后,按順序逐個(gè)賦值。很好理解吧!再看看下面這個(gè):
所以小編把這個(gè)語(yǔ)法稱(chēng)之為“多變量同時(shí)賦值”,就是把多個(gè)變量同時(shí)賦值,當(dāng)然賦值中存在一些細(xì)節(jié),已經(jīng)在上面的例子中展示了。
最后有人一定想問(wèn),如果變量個(gè)數(shù)多于值的個(gè)數(shù),會(huì)是什么樣的結(jié)果呢?呵呵,看看:
新聞熱點(diǎn)
疑難解答
圖片精選