今天看啥  ›  专栏  ›  GoCN

Go 1.23中的自定义迭代器与iter包

GoCN  · 公众号  ·  · 2024-07-04 08:00
    

文章预览

在 《Go 1.23新特性前瞻》 [1] 一文中,我们提到了Go 1.23中增加的一个主要的语法特性就是 支持了用户自定义iterator ,即 range over func试验特性 [2] 的正式转正。为此,Go 1.23还在标准库中增加了 iter包 [3] ,这个包对什么是Go自定义iterator做了诠释: An iterator is a  function  that passes successive elements of a sequence to a callback  function , conventionally named yield. The  function  stops either when the sequence is finished or when yield returns  false , indicating to stop the iteration early. 迭代器是一个函数,它将一个序列中的连续元素传递给一个回调函数,通常称为 "yield" 。迭代器函数会在序列结束或者yield回调函数返回 false (表示提前停止迭代)时停止。 除此之外,iter包还定义了标准的iterator泛型类型、给出了有关iterator的命名惯例以及在迭代中修改序列中元素的方法等, ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照
总结与预览地址:访问总结与预览