首页 > 解决方案 > 为什么 Swift 不解决“索引越界”异常?

问题描述

据说 Swift 的设计考虑到了安全性。如果是这样,那么为什么它没有针对“索引超出范围”错误的内置解决方案?

例如,它可以在使用数组下标时返回可选值:

let friends = ["Jack", "Lisa", "Brian"]

let friend1 = friends[1] // Optional("Lisa")
let friend3 = friends[3] // nil

字典确实使用这种模式,这没有问题。

我知道我可以将数组索引与 进行比较friends.count,但经常这样做很烦人。

我只是不明白为什么 Swift 设计师还没有解决这个问题。也许有一些我不知道的普遍惯例或技术限制。在那种情况下,我将不胜感激。

标签: swiftindexoutofboundsexceptionsubscriptindexoutofrangeexception

解决方案


推荐阅读