reverse LIST

在列表上下文中,返回一个列表值,该值包含 LIST 中的元素,顺序相反。在标量上下文中,连接 LIST 中的元素,并返回一个字符串值,其中所有字符的顺序相反。

print join(", ", reverse "world", "Hello"); # Hello, world

print scalar reverse "dlrow ,", "olleH";    # Hello, world

在标量上下文中不带参数使用时,reverse 反转 $_.

$_ = "dlrow ,olleH";
print reverse;                         # No output, list context
print scalar reverse;                  # Hello, world

请注意,将数组反转到自身(如 @a = reverse @a)将在可能的情况下保留不存在的元素;即,对于非魔法数组或对于具有 EXISTSDELETE 方法的绑定数组。

此运算符也适用于反转哈希,尽管有一些注意事项。如果在原始哈希中重复了某个值,则这些值中只有一个可以作为反转后的哈希中的键表示。此外,这必须解开一个哈希并构建一个全新的哈希,这可能在大型哈希(例如来自 DBM 文件的哈希)上需要一些时间。

my %by_name = reverse %by_address;  # Invert the hash