1 复合表达式
- 用一个表达式有序地计算若干子表达式,并返回最后一个子表达式的值
1.1 begin代码块
z = begin
x = 1
y = 2
x + y
end
z
#3
begin x = 1; y = 2; x + y end
#3
1.2 ;链
(x = 1;
y = 2;
x + y)
#3
(x = 1; y = 2; x + y)
@3
2 条件表达式
x=1
y=2
if x < y
println("x is less than y")
elseif x > y
println("x is greater than y")
else
println("x is equal to y")
end
#x is less than y
2.1 三元运算符
- a ? b : c
- 如果条件
a
是true
,三元运算符计算在:
之前的表达式b
- 如果条件
a
是false
,则执行:
后面的表达式c
- 如果条件
x=1
y=2
x<y ? "less than" : "more than"
#"less than"
3 循环
3.1 while
i=1
while i <= 5
println(i)
i += 1
end
'''
1
2
3
4
5
'''
3.2 for
for i = 1:5
println(i)
end
'''
1
2
3
4
5
'''
3.2.1 多个嵌套的for循环
多个嵌套的 for
循环可以合并到一个外部循环,可以用来创建其迭代对象的笛卡尔积
for i = 1:2, j = 3:4
println((i, j))
end
'''
(1, 3)
(1, 4)
(2, 3)
(2, 4)
'''
3.2.2 zip+循环
可以使用zip在单个 for
循环中同时迭代多个容器
for (j, k) in zip([1 2 3], [4 5 6 7])
println((j,k))
end
'''
(1, 4)
(2, 5)
(3, 6)
'''
zip
迭代器将按顺序迭代所有子迭代器,在 for
循环的第 i 次迭代中选择每个子迭代器的第 i 个元素。
一旦任何子迭代器用完,for
循环就会停止。