我发现最后一个单词用双引号显示。但为什么呢?
NSDictionary *guide2 = [NSDictionary dictionaryWithObjectsAndKeys:kArr, @"Kate", aArr, @"Ana-Lucia", kArr, @"John", nil];
NSArray *array = [guide2 allKeys];
NSLog(@"%@", [array description]);
输出:
(
John,
Kate,
"Ana-Lucia"
)
答案 0 :(得分:7)
因为它不是严格的字母数字和仅一个字。试试NSArray *array = [NSArray arrayWithObjects:@"abc", @"123", @"$abc", @"a-b-c", @"a b c", nil];
,你会看到只有前两个没有被引用。它只是编写描述代码的人的一个实现选择。
答案 1 :(得分:7)
似乎由于键-
中的特殊字符Ana-Lucia
,它会在双引号中显示它。可能是因为表示键是一个单词。如果您的密钥仅包含{“1}},例如”AnaLucia“,那么它将显示没有引号。
如果密钥包含alphabets
以外的任何字符,则会以双引号显示,即使它是alphabets
或underscore(_)
。