В книге, которую я сейчас читаю, я должен написать следующий код:
-(IBAction)displaySomeText:(id)sender {
NSString *cow = @"Milk";
NSString *chicken = @"Egg";
NSString *goat = @"Butter";
NSArray *food = [NSArray arrayWithObjects:cow, chicken, goat, nil];
NSString *string = @"The shopping list is: ";
string = [string stringByAppendingString:[food componentsJoinedByString:@", "]];
[textView insertText:string];
}
Я немного понимаю, как работают массивы, но мне нужна помощь в понимании следующего кода
string = [string stringByAppendingString:[food componentsJoinedByString:@", "]];
Я никогда не видел пример, где это возможно.
Он попросил меня создать объект «строка» из класса NSString
, а затем я делаю это
string = [string stringByAppendingString:];
Я в замешательстве.Я никогда не видел примера, когда я создаю объект, а затем выполняю метод для того же объекта и сохраняю его в том же самом объекте.
Например, я знаю, что могу это сделать
NSSound *chirp;
chirp = [NSSound soundNamed:@"birdChirp.mp3"];
вышесказанное имеет смысл, потому что я использовал созданный объект и выполнил для него метод класса.
но я всегда предполагал, что эквивалент следующего кода НЕ был возможно
chirp = [chirp methodNameEtc..];
Надеюсь, я хорошо объяснил свой вопрос. В противном случае я всегда мог бы уточнить.