"NSString stringWithFormat:" - Использовать один и тот же параметр несколько раз?
Когда я использую форматирование строк, могу ли я получить один параметр несколько раз, не передавая его снова?
Пример:
NSString *parameter1 = @"1";
NSString *parameter2 = @"2";
NSString *myString;
myString = [NSString stringWithFormat:@"I want to print parameter1 here: %@, parameter2 here: %@ and now access parameter1 again: %@ _without_ passing it again.",parameter1, parameter2, parameter1];
Есть ли способ снова получить доступ к первому параметру без повторной записи ", parameter1"?
Ответы
Ответ 1
Да, используя позиционные аргументы:
// prints: foo bar foo bar
NSLog(@"%@", [NSString stringWithFormat:@"%[email protected] %[email protected] %[email protected] %[email protected]", @"bar", @"foo"]);
// NSLog supports it too
NSLog(@"%[email protected] %[email protected] %[email protected] %[email protected]", @"bar", @"foo");
Ответ 2
NSString *parameter1 = @"1";
NSString *parameter2 = @"2";
NSString *myString;
myString = [NSString stringWithFormat:@"I want to print parameter1 here: %[email protected], parameter2 here: %[email protected] and now access parameter1 again: %[email protected] _without_ passing it again.",parameter1, parameter2];
Спецификаторы формата строки