记次循环
4 timesRepeat: [ doSomething ]
区间循环
0 to: 100 do: [ :i | ... ]
0 to: 100 by: 3 do: [ :i | ... ]
0 to: 100
返回一个 Interval(区间) 对象,Interval 是 Collection 的子类。do:
是Collection的通用方法。因此,上面的两种循环与下面的遍历循环是等价的。
aCollection do: [ :each | ... ]
do:
只是最基本的迭代器
collect:
收集结果, 相当于 map#(1 2 3 4 5) collect: [ :i | i odd ] => #(true false true false true)
select:
选择匹配的条目, 相当于 filter#(1 2 3 4 5) select: [ :i | i odd ] => #(1 3 5)
reject:
排除匹配的条目, 相当于反向的 filter#(1 2 3 4 5) reject: [ :i | i odd ] => #(2 4)
detect:
获取第一个匹配的条目#(1 2 3 4 5) detect: [ :i | i odd ] => 1
detect:ifNone:
获取第一个匹配的条目,如果不匹配则返回指定的默认值#(1 2 3 4 5) detect: [ :i | i < 0 ] ifNone: [ false ] => false
includes:
测试是否包含
while 循环
[ aBoolean ] whileTrue: [ doSomething ]