新增Objective-C並保持它非常簡單我期待了解一次一件事......我設置了一個非常簡單的類叫做student,它所做的就是添加兩個數字想看看事情如何進入和回程從方法)**我重寫了代碼== >>看看,看看到底。如果我有了如何發送值給Ivar的方法
@property (nonatomic) int firstNum;
@property (nonatomic) int secondNum;
的方法,工程**
版本
和我有一個我的班的實例叫學生我分配一個值firstNum
像student.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;
}
這裏是什麼工作:假設我有一個學生對象
.M
(長)的addNumbers:(NSNumber的*)X :(NSNumber *)y {
long sum;
sum = [x integerValue] + [y integerValue]; 歸還金額; }
主
的NSMutableArray * myIntegers1 = [NSMutableArray的數組]; NSMutableArray * myIntegers2 = [NSMutableArray array];
for (NSInteger i= 0; i <40; i++) {
[myIntegers1 addObject:[NSNumber numberWithInteger:i]];
[myIntegers2 addObject:[NSNumber numberWithInteger:i]];
長總和= [學生的addNumbers:[myIntegers1 objectAtIndex:I]:[myIntegers2 objectAtIndex:ⅰ]];
NSLog(@" The sum is %ld", sum);
}
您陣列由NSNumber的的' *,它們是指向Objective-C對象的指針。這並不奇怪:'NSArray'只能包含指向對象的指針,而不是原語。 Hance,'objectAtIndex:'返回一個通用對象指針('id')。 'int'是一個原始的,內置的C類型。這不是一個指針。所以,你不能把'objectAtIndex:'的返回值賦給屬性,因爲一個是'id'(即指向Objective-C對象的指針),另一個是'int'。但是,您可以嘗試將「NSNumber」對象轉換爲「int」。閱讀文檔以瞭解如何。 –