What does @[ mean in objective C
本问题已经有最佳答案,请猛点这里访问。
例如:
1 2 3 | [[FlyoutTableViewController alloc] initWithViewControllers:@[@[firstNavigationController],@[secondNavigationController]]]; - (id)initWithViewControllers:(NSArray *)viewControllers |
我知道它正在向initwithviewcontrollers发送这些视图控制器的一个nsarray,但是我想了解更多关于这种创建数组的方法。有什么好处,有什么潜在的问题吗?
此外,对象、FirstNavigationController和SecondNavigationController是否也需要位于@[中,或者那里发生了什么?
蒂亚
我来给你做个类比。
这是创建一个NSARRAY的简略方法。
1 | NSArray *array = [[NSArray alloc] init]; |
等于
1 | NSArray *array = @[]; |
您可以在这里看到更多的客观性C字面值。
它是一个数组文本。像字符串文字
因此,
这意味着您要用一个值定义一个数组。例如
1 | @[value1, value2, value3] |
你可以把数组做成那样。@[@[item1]]是一个包含item1的单个数组的数组。