Perl 6:......和...之间的区别?

时间:2018-03-25 18:26:25

标签: perl6

Perl 6中......和...之间有什么区别?

例如,以下行将产生相同的输出:

for 1..5 { .say };

for 1...5 { .say };

1 个答案:

答案 0 :(得分:10)

..构造一个范围对象(想想数学区间)。

...构造一个序列(想想懒惰生成的一次性列表)。

如果我想要做的就是迭代连续的整数(例如用于索引),我更喜欢他以前(它是不太通用的工具,而且一个字符更短的引导)。

如果你需要更精确的控制,请使用后者(例如,在Perl6中生成Fibonacci序列的惯用示例由表达式1, 1, *+* ... *给出,其中第三项*+*是归纳的规则生成元素。)