我正在尝试将数组计数分配给UInt32。我收到错误消息“无法转换'Int类型的值?'到指定的类型'UInt32'”。数组计数为Int类型,但错误显示“ Int?”,它看起来像一个可选的Int。我不知道那还有什么意思。
let randColorCount:UInt32 = slider?.randUIColors.count
我也尝试过:
let randColorCount:UInt32 = UInt32(slider?.randUIColors.count)
但是我收到错误消息“无法为类型为'(Int?)'的参数列表调用'UInt32'类型的初始化程序”。
答案 0 :(得分:6)
slider?.randUIColors.count
由于使用可选链接而产生Int?
。
一个简单的解决方案是将其与nil合并运算符??
结合使用,以在slider
为nil
的情况下提供默认值。
let randColorCount = UInt32(slider?.randUIColors.count ?? 0)