gpt4 book ai didi

swift - swift 中的字符串迭代器

转载 作者:行者123 更新时间:2023-11-28 06:12:04 25 4
gpt4 key购买 nike

我尝试在 swift 中创建一个用于字符串处理的迭代器,它会在每次下一个字符时返回。但没有运气。(最终目标是为自定义脚本语言编写解析器)

我在网上找到的所有方法都涉及范围内的一些 for 循环,一次访问一个字符串的字符。但我更需要像 hasNext () 和 getNextChar () 这样的方法,其他函数会调用这些方法。

在 swift 中编写这样的迭代器类最有效的方法是什么? swift 中是否有一些类已经实现了该功能,因此,我不必首先编写迭代器?

最佳答案

在返回 String.IteratorString 上调用 makeIterator()。您可以对其调用 next() 以获取下一个字符。当没有更多字符时,它返回 nil

let myString = "abcde"

// var iter = myString.characters.makeIterator() // Swift 3
var iter = myString.makeIterator() // Swift 4 and 5

while let c = iter.next() {
print(c)
}

输出:

a
b
c
d
e

关于swift - swift 中的字符串迭代器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46258820/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com