以下のコードは行にエラーを生成しますが、その[myArray objectAtIndex:i];
理由がわかりませんか?
何か案は?
int total = 0;
for (int i = 0; i < myArray.count; i++) {
int tempNumber = [myArray objectAtIndex:i];
total = total + tempNumber;
}
以下のコードは行にエラーを生成しますが、その[myArray objectAtIndex:i];
理由がわかりませんか?
何か案は?
int total = 0;
for (int i = 0; i < myArray.count; i++) {
int tempNumber = [myArray objectAtIndex:i];
total = total + tempNumber;
}
オブジェクトを int に設定していることが原因である可能性があります。定義により、objectAtIndex はオブジェクトを返します。
myArray 内のオブジェクトのタイプに応じて、次のようなことを試すことができます。
int tempNumber = [[myArray objectAtIndex:i] intValue];
配列に s を入れていない場合は、s を取り出すint
ために何か特別なことをする必要がありますint
。上記のコードでエラーが発生する場合は、配列に s がないためint
であり、必要です
int myInteger = [[myArray objectAtIndex:i] intValue];
または、コードの残りの部分に応じて、配列から int を取得するためのもの。