gpt4 book ai didi

loops - Swift - 尝试从文本字段循环遍历 stringValue

转载 作者:行者123 更新时间:2023-11-30 10:23:13 26 4
gpt4 key购买 nike

我正在尝试迭代文本字段中的每个字符,

我是这样做的:

@IBOutlet var needTranslate : NSTextField
for i in needTranslate.stringValue{

然后我收到错误:SourceKitService 已终止

并且只有当我尝试循环该字符串值时才会发生这种情况。我知道这是一个错误,但我在代码中做错了什么吗?

最佳答案

对我来说这看起来像是一个编译器错误。

  • 您的代码导致运行时异常swift 编译器本身。即使源代码完全错误,也不应该发生这种情况。
  • 您的代码看起来实际上是正确的(对我来说),因为 stringValue 的返回值是一个隐式展开的可选字符串。

问题可以重现

var s : String! = "foo"
for i in s {
println(i)
}

我从文档中看不出为什么 for ... in ... 循环不应该与隐式展开的字符串,因此我建议向 Apple 提交错误报告。

作为解决方法,您可以将 stringValue 的返回值视为“正常”可选并使用可选绑定(bind)显式解开它:

if let str = needTranslate.stringValue {
for i in str {
println(i)
}
}

关于loops - Swift - 尝试从文本字段循环遍历 stringValue,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24594055/

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