iOSでforループを使用したのはこれが初めてです。フラ!
「bookTitle」はクラス内のNSStringオブジェクトであることに注意してください。このクラスが開始すると、String引数を取り、bookTitleをそれに設定します。
books = [[NSMutableArray alloc] initWithObjects:
[[Book alloc] initWithTitle:@"What a great title" andAuthor:@"R Crimson"],
[[Book alloc] initWithTitle:@"What another great title" andAuthor:@"R Crimson"],
nil ];
NSUInteger count = [books count];
for(NSUInteger i= 0; i < count;i++){
Book *tb= [books objectAtIndex:i];
if(tb.title=bookTitle){
nameLabel.text=tb.title;
}
残念ながら、tb.titleとbookTitleはどちらもnullです。何が起こるかというと、bookTitleと一致するタイトルを持つ配列内のオブジェクトには、そのタイトルがnameLabelに割り当てられる必要があります。
だから私はどこが間違っているのか、そしてまたより良い解決策があるかどうか疑問に思っていますか?title属性は一意の識別子ではないため、同じタイトルの2つのオブジェクトを本に追加すると(これまでとは異なりますが、それでも!)、複数のオブジェクトが返されますが、これは適切ではありません。
前もって感謝します。