ios – objectAtIndexedSubscript和objectAtIndex之间的区别

这可能是一个菜鸟问题,但是我已经搜索了stackoverflow和其他资源。

NSArray方法objectAtIndexedSubscript和objectAtIndex有什么区别?

或者,如果没有区别,为什么两者都存在?

Apple Docs说它们是“相同的”。

我是编程的新功能,但如果它们是相同的,那不是打破DRY原则?显然苹果的家伙知道他们在做什么,但是为什么他们都是相同的?或者也许一个更好的问题是,为什么我应该使用一个呢?

非常感谢你的帮助。

他们是一样的

-objectAtIndex:是你应该使用的方法。

-objectAtIndexedSubscript:提供对obj-c下标的支持的方法。换句话说,这个方法是编译器使用的方法,如果你说数组[3]。但是对于NSArray *,它与-objectAtIndex:完全相同。为什么它是一个不同的方法的原因是其他类可以实现这一点,以便支持obj-c下标,而不必使用通用命名的-objectAtIndex:。

相关文章
相关标签/搜索