gpt4 book ai didi

arrays - Swift:如何检查变量是否存在

转载 作者:搜寻专家 更新时间:2023-11-01 05:48:31 25 4
gpt4 key购买 nike

我正在尝试检查 Swift 中是否存在变量(或者更确切地说是数组的特定索引)。

如果我用

if let mydata = array[1] {

如果索引有值,我会得到一个错误,如果没有,我会崩溃。

如果我用

if array[1] != nil {

我收到编译器警告和/或崩溃。

本质上,我只是想获取命令行参数(可以是任何文件名)并检查它们是否已包含在内。我见过的所有命令行参数示例都使用 switch/case 语句,但检查的是已知文本,而不是不同的文件名。

我仍然在 Xcode 中遇到索引超出范围的错误,错误如下:

if arguments.count > 1 {
var input = arguments[2]
} else {
}

最佳答案

试试这个:

extension Collection where Indices.Iterator.Element == Index {

subscript (safe index: Index) -> Generator.Element? {
return indices.contains(index) ? self[index] : nil
}
}

然后:

if let value = array[safe: 1] {
print(value)
}

现在您甚至可以:

textField.text = stringArray[safe: anyIndex]

这不会导致崩溃,因为 textField.text 可以为 nil,并且 [safe:] subscript 总是返回值(如果存在)或 nil(如果不存在)

关于arrays - Swift:如何检查变量是否存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46122935/

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