ios - Swift 中的“in”是什么意思?
问题描述
我在 SwiftUI 中多次看到“in”这个词,但不太明白它的含义。因为这个词又短又普通,我很难寻找它的含义和用法。
最近,我在onChange 方法中看到了它,例如:
struct ContentView: View {
@State private var name = ""
var body: some View {
TextField("Enter your name:", text: $name)
.textFieldStyle(RoundedBorderTextFieldStyle())
.onChange(of: name) { newValue in
print("Name changed to \(name)!")
}
}
解决方案
就像在您的代码示例中使用in
fther newValue
let`s Swift 一样,您知道 process 的返回值将会发生,newValue
所以它更像是一个符号或标志,称为:“token”,对您和 CPU 来说,工作正在发生,newValue
因为你把它放在前面in
,例如你用 using 给name
了onChange修饰符,如果得到任何新的更新newValue in
,你将获得更新的值,还请注意你可以使用代替并且工作方式相同。name
$0
newValue in
.onChange(of: name) { newValue in
return print("Name changed to \(name)!")
}
或者:
.onChange(of: name) {
print("Name changed to \($0)!")
}
两者都是一样的,看你喜欢什么。
另一个更好理解的例子:
let arrayOfInt: [Int] = [1, 2, 3]
let arrayOfString: [String] = arrayOfInt.map({ value in return value.description })
let arrayOfString: [String] = arrayOfInt.map({ $0.description })
例如,我们有一个arrayOfInt
并且我们想要创建它的 String 数组,对于这项工作,我们可以使用map
,再次像上一个示例一样,我们in
以 2 方式使用。在第一个 as:value in
和第二个中 as $0
。我建议您学习更多关于Swift/SwiftUI 中的闭包的知识,它们非常重要,如果不了解它们,我们就无法很好地理解 iOS 中的代码。
也不要忘记在你可以输入和使用或不使用它return
之后注意单词in
,Swift 足够聪明,因为推理可以理解,但是如果你使用它,它会让你的代码更容易阅读和更好在代码的语法中。
推荐阅读
- python-3.x - 使用 PyPDF2 将字符串写入 pdf
- pyspark - 使用 ML 管道进行字符串匹配时抛出错误无法执行用户定义的函数($anonfun$1: (vector) => array
) - php - 尝试使用 npm 安装 laravel-elixir 时如何修复以下错误
- html - 根据左侧而不是文本移动图标
- google-maps - 地理定位器插件以获取当前位置
- html - html表格中的意外边框间距
- typescript - 打字稿类型 特定属性所需
- java - 无法理解这个递归程序的计算是如何工作的
- c# - 包含时间戳的 DynamoDb 级联键
- apache-spark - Spark:为层次结构DataFrame的每个节点构建递归树路径