Raku 语言 循环结构 for while until 基础用法

Raku阿木 发布于 2025-06-09 21 次阅读


Raku(以前称为Perl 6)是一种现代的、动态的编程语言,它继承了Perl的强大功能和灵活性,同时引入了许多新的特性和改进。在Raku中,循环结构是处理重复任务的关键工具。本文将围绕Raku的`for`、`while`和`until`循环结构进行探讨,包括它们的基础用法和示例。

循环结构是编程语言中用于重复执行代码块的一种机制。在Raku中,`for`、`while`和`until`是三种主要的循环结构,它们各自适用于不同的场景。

1. `for` 循环

`for` 循环在Raku中用于遍历序列(如列表、数组、哈希等)中的每个元素,并对每个元素执行一次循环体。

基础用法

raku
for -> $item {
say $item;
}

在上面的例子中,`` 是一个列表,`for` 循环会遍历这个列表,并将每个元素赋值给变量 `$item`,然后执行循环体中的 `say $item`。

循环控制

Raku的`for`循环允许你使用`continue`和`last`关键字来控制循环的执行。

raku
for -> $item {
if $item eq 'b' {
continue;
}
say $item;
}

在这个例子中,当 `$item` 等于 `'b'` 时,`continue` 关键字会跳过当前循环的剩余部分,直接进入下一次迭代。

嵌套循环

Raku支持嵌套循环,就像其他编程语言一样。

raku
for -> $outer {
for -> $inner {
say "$outer, $inner";
}
}

在这个例子中,外层循环遍历 ``,内层循环遍历 ``,输出每个组合。

2. `while` 循环

`while` 循环在Raku中用于在满足特定条件时重复执行代码块。

基础用法

raku
my $count = 0;
while $count < 5 {
say $count;
$count++;
}

在这个例子中,`while` 循环会一直执行,直到 `$count` 达到5。每次循环结束后,`$count` 的值会增加。

循环控制

与`for`循环类似,`while`循环也支持`continue`和`last`关键字。

raku
my $count = 0;
while $count < 5 {
if $count == 3 {
last;
}
say $count;
$count++;
}

在这个例子中,当 `$count` 等于3时,`last` 关键字会立即退出循环。

3. `until` 循环

`until` 循环在Raku中与`while`循环相反,它在条件不满足时重复执行代码块。

基础用法

raku
my $count = 0;
until $count >= 5 {
say $count;
$count++;
}

在这个例子中,`until` 循环会一直执行,直到 `$count` 达到或超过5。

循环控制

`until`循环同样支持`continue`和`last`关键字。

raku
my $count = 0;
until $count >= 5 {
if $count == 3 {
last;
}
say $count;
$count++;
}

在这个例子中,当 `$count` 等于3时,`last` 关键字会立即退出循环。

结论

Raku的`for`、`while`和`until`循环结构为开发者提供了强大的工具来处理重复任务。通过理解这些循环的基础用法和特性,开发者可以更有效地编写Raku代码。本文通过示例展示了这些循环的基本用法,并简要介绍了循环控制的关键字。希望这些信息能帮助读者更好地掌握Raku的循环结构。