en

hi, it seems you are using microsoft internet explorer. it doesn't match web standard and causes problems browsing this site. please please please use mozilla firefox or google chrome instead. thank you!

zh

哦哦!您正在使用Internet Explorer 瀏覽器,它與我們的網頁標準並不相容,可能會導致畫面顯示不正常。
請改用 Mozilla Firefox 或者 Google Chrome 才能正常瀏覽本網站,謝謝!

10.07.2011

關於 Objective-C 的 in 指令

當你在 Objective-C 語言中,想要尋訪一個未知大小的 NSArray 陣列或是 NSMutableArray 陣列中的所有物件時,就可以使用 in 指令,in 指令可以在程式執行 for 迴圈時自動產生一個指向目前陣列中第一個物件的指標,並且在每次迴圈迭代中都會將指標移往下一個物件,直到整個陣列的最末端。

下列程式碼演示了一個 1~5 的 NSArray 字元陣列,並使用 in 指令傾印出每次迴圈迭代時所取得的字元。

NSArray *stringArray = [NSArray arrayWithObjects:@"1", @"2", @"3", @"4", @"5", nil];

for (NSString *str in stringArray) {
    NSLog(@"%@", str);
}


除了字元外,也可以使用 in 指令一次性地將所有儲存在 NSMutableArray 的物件加入到主畫面中。

NSMutableArray *viewArray = [NSMutableArray arrayWithObjects:imageView_1, imageView_2, imageView_3, nil];

for (UIView *view in viewArray) {
    [self.view addSubview:view];
}

ps: in 指令並無法支援傳統 C 語言所宣告的陣列形態,例如 array [i] [j] 等類型。






沒有留言:

張貼留言