Perl 6中......和...有什么区别?
例如,以下行将生成相同的输出:
for 1..5 { .say };
for 1...5 { .say };
..
构造一个范围对象(想想数学区间)。
...
构建一个序列(想想懒惰生成的一次性列表)。
如果我想要做的就是迭代连续的整数(例如用于索引),我更喜欢他的前者(它是不太通用的工具,而且一个字符更短的引导)。
如果您需要更精确的控制,请使用后者(例如,在Perl6中生成Fibonacci序列的惯用示例由表达式1, 1, *+* ... *
给出,其中第三项*+*
是用于归纳生成元素的规则)。