获取数组元素的索引为Int

Son*_*ter 0 arrays uiviewcontroller ios swift

我的UIViewController协议中有一个数组

var viewControllers: [MyViewController] { get }
Run Code Online (Sandbox Code Playgroud)

我想获取具有特定ViewController的项目索引

let idfx = viewModel.viewControllers.index(of: viewController as! MyViewController)
Run Code Online (Sandbox Code Playgroud)

但是类型idfx是Array.index.

如何将数组元素的索引作为Int?

Dun*_*n C 7

Nonuld说,问题不在于它的类型Array.index,这是一种类型Int.问题是它是可选的.你需要以某种方式打开可选项.一种方法是使用"if let"可选绑定:

if let idfx = viewModel.viewControllers.index(of: viewController as! MyViewController) {
  print("view controller found at index \(idfx)") 
} else {
  print("View controller not found in array")
}
Run Code Online (Sandbox Code Playgroud)