%@
является заполнителем в строке формата для экземпляра NSString.
Когда вы делаете что-то вроде:
NSLog(@"My home folder is at '%@'", absolutePath);
Вы говорите NSLog заменить заполнитель %@
на строку с названием absolutePath.
Аналогичным образом, если вы добавите больше заполнителей, вы можете указать больше значений для замены этих заполнителей следующим образом:
NSString *absolutePath = @"/home/whatever";
NSLog(@"My home #%d folder is at '%@'", 5, absolutePath);
Напечатает:
Мой дом № 5 находится в / доме / что угодно
Простой способ объединения строк:
NSString *s1 = @"Hello, ";
NSString *s2 = @"world.";
NSString *s = [NSString stringWithFormat:@"%@%@", s1, s2];
// s will be "Hello, world."
Нельзя использовать знак +
в качестве оператора объединения строк, поскольку в Objective-C нет перегрузки операторов.
Надеюсь, это поможет.