可选值

在学习的第一天,我遇到了前所未有的编程功能。

  var x:Int?  = y 

可选值可以是普通变量或nil。 我认为这很棒。 在其他语言中,是否可以将变量假定为非null尚不明确。 程序员必须记录API是否可以返回null。 如果另一个程序员碰巧忽略了可能会形成一个困难的错误。 Swift明确指出了这一点,从而减少了错误并提高了开发效率。

为什么不在任何地方?

在了解了可选值之后,我回顾了数组。 在快速数组中,仍然抛出索引超出范围的异常。 这使我产生疑问

为什么数组索引不返回可选值?

我认为最好返回nil而不是抛出异常。 可能有一个很好的理由。 将来,我将学习何时最好返回null以及何时最好引发异常。