有四种称呼:联合赋值、并行赋值、多重赋值、结构赋值、交叉类型。
联合赋值起初的Coral66语言。
Coral66(1964年)
INTEGER a,b,c:=1,2,3;
APL语言(1966年)
a b←1 2
或:(a b)←(1 2)
BCPL(1967年)
发布:1966年到1967年
LET a,b,c=1,2,3
SETL语言(1969年)
注:是Python他爷爷。
[a,b]:=[1,2];
联合赋值数组
v:=[10,20];
[a,b]:=v;
CLU(1975年)
a,b:=b,a
Occam语言(1983年)
a,b:=1,2
脚本语言系列
Perl语言(1987年)
my ($a,$b)=1,2;
Pyhon/Ruby/Lua/Julia
a,b=1,2
a,b=b,a
C#语言(2000年)
(a,b)=(b,a);
注:利用元组,版本:C#7
Scala语言(2004年)
var (a,b,c)=(1,2,3)
val (a,b,c)=(1,2,3)
Kotlin语言(2011年)
val (a,b)=arrayOf(1,2)
var (a,b)=arrayOf(1,2)
go语言(2009年)
a,b:=1,2
a,b=b,a
或者:
var a,b=1,2
Swift(2007年)
let (a,b)=(1,2)
Rust语言(2015年)
注:Swift和Rust联合赋值很类似。
let (a,b)=(1,2);
JavaScript语言(1995年)
也叫结构赋值
[a,b]=[1,2];
Icon语言(1977年)
(a|b):=(1|2)
ABC语言(1987年)
注:联合赋值关键字
注:Python他爸爸
PUT 1,2 IN a,b