Почему Swift не решает исключение "индекс вне границ"?

Говорят, что Swift разработан с учетом требований безопасности. Если это так, то почему у него нет встроенного решения для ошибки "индекс вне диапазона"?

Например, он может возвращать необязательные значения при использовании индексов массива:

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

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

Словари используют этот шаблон, и с этим проблем нет.

Я знаю, что могу сравнить индексы массива с friends.countНо делать это постоянно утомительно.

Я просто не понимаю, почему это не решают дизайнеры Swift. Может быть, есть некоторые распространенные соглашения или технические ограничения, о которых я не знаю. В этом случае, я был бы благодарен за объяснение.

0 ответов

Другие вопросы по тегам