gpt4 book ai didi

swift - 在 switch 语句中显式转换类型是否安全,其中 case 是我转换为的类型?

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

我有这段代码,我想知道在这里使用 as! 是否安全。

switch value {
case is [String]:
setCustomAttributeArrayWithKey(key, array: value as! [String])
default:
...
}

最佳答案

它在您的特定情况下是安全的,但容易出错:如果您重用该代码并仅更改一次 [String]但忘记改变另一个事件?通常,强制转换应尽可能避免使用 as!

而且这里是可能的,使用模式绑定(bind):

switch value {
case let stringArray as [String]:
setCustomAttributeArrayWithKey(key, array: stringArray)
default:
...
}

以一种不太容易出错的方式做同样的事情:不重复[String] 类型并且没有使用 as! 进行强制转换。

关于swift - 在 switch 语句中显式转换类型是否安全,其中 case 是我转换为的类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35700052/

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