目标C中不常用的符号

时间:2012-12-07 23:35:26

标签: iphone objective-c ios xcode cocoa-touch

我最近在Xcode项目中遇到了一些我以前没有注意到的符号。

什么是

  

@{some_value}

     

@[some_value]

谢谢

3 个答案:

答案 0 :(得分:1)

这些是ObjC集合文字。文档在这里:http://clang.llvm.org/docs/ObjectiveCLiterals.html

答案 1 :(得分:1)

它应该是@{key:value},表示具有键和值的字典。 @[some_value]应该是一个数组。如其他答案中所述,请查看Objective C Literals以获取更多详细信息。

从该链接可以看出一个例子,

NSDictionary *dictionary = @{
    @"name" : @"some name",
    @"date" : [NSDate date],
    @"processInfo" : [NSProcessInfo processInfo]
};

NSArray *array = @[ @"Hello", NSApp, @42]];

答案 2 :(得分:0)

这些是Objective-C'快捷方式',可让您快速制作NSArray或NSDictionary。

我可以说

NSArray *myArray = @[@"My Object", @"My Second Object", @"My Third Object"];

实际上,@“”符号是相同的,因为它允许您快速创建NSString。

@ {}:

NSDictionary *myDict = @{@"My Object" : @"My Key", @"My Second Object", @"My Second Key"};

对于懒惰的开发人员来说,只是一个快速的方法,无法完成实际输入[[... alloc] init...]的明显艰巨任务