-1

Objective-Cは初めてで、非常にシンプルに保ちます一度に1つのことを理解しようとしています...学生と呼ばれる非常に単純なクラスをセットアップします.2つの数字を追加して、物事がどのようにやり取りされるかを確認しようとしています.メソッドから) **コードを書き直しました ==>> 最後を見て、動作するバージョンを確認してください **

私が持っている方法があれば

@property (nonatomic) int firstNum; 
@property (nonatomic) int secondNum;

私は学生と呼ばれるクラスのインスタンスを持っています。値を割り当てるのfirstNumstudent.firstNum = 100; student.secondNum = 77;簡単で、メソッドはそれらを追加し、合計をreturn

しかし、主に配列から割り当てようとしましたが、うまくいきませんでした

student.firstNum = [myIntegers objectAtIndex:0];

student.firstNum = [myIntegers objectAtIndex:i]; //using a for loop with i index 

整数変換への互換性のないポインターと表示されます

firstNumこれはメインのスニペットです。最終的には設定しようとしていますが、完全ではありません。最終的にはsecondNum、各ペアを設定してメソッドに送信し、一緒に追加しますが、今のところ、値が割り当てられた firstNum を取得しようとして立ち往生していmyIntegers[i]ます始める

NSMutableArray *myIntegers = [NSMutableArray array];

for (NSInteger i= 0; i <= 10; i++) {

    [myIntegers addObject:[NSNumber numberWithInteger:i]]; // this works up to here 

    student.firstNum = [myIntegers objectAtIndex:i]; // this does not work

} 

私も試し[i]ました。

これが私の方法です:

- (int)addNumbers {

    int sum = self.firstNum + self.secondNum;
    return sum;
}

HERE IS WHAT WORKS:学生オブジェクトがあると仮定します

.m

  • (long)addNumbers:(NSNumber *)x :(NSNumber *)y {

    長期;

    合計 = [x 整数値] + [y 整数値]; 合計を返します。}

主要

NSMutableArray *myIntegers1 = [NSMutableArray 配列]; NSMutableArray *myIntegers2 = [NSMutableArray 配列];

    for (NSInteger  i= 0; i <40; i++) {

        [myIntegers1 addObject:[NSNumber numberWithInteger:i]];
        [myIntegers2 addObject:[NSNumber numberWithInteger:i]];

long sum = [student addNumbers:[myIntegers1 objectAtIndex:i] :[myIntegers2 objectAtIndex:i]];

        NSLog(@" The sum is %ld", sum);
}
4

1 に答える 1

0

タイプ のプロパティを作成していますintが、forループ内でそれらに を割り当てようとしていNSNumberます。

NSNumberac データ項目の単純なコンテナーであり、、、、、などをint保持できfloatます。charbool

ループを次のように変更します。

for (NSInteger  i= 0; i <= 10; i++) {

    [myIntegers addObject:[NSNumber numberWithInteger:i]];

    student.firstNum = [[myIntegers objectAtIndex:i] intValue]; // this 'extracts' the int value from the NSNumber

} 
于 2014-11-16T09:36:39.193 に答える