IOS開發基礎之二維陣列詳解

2022-09-29 16:30:14 字數 1258 閱讀 9707

ios開發基礎之二維陣列詳解

首先我們知道oc中是沒有二維陣列的,二維陣列是通過一位陣列的巢狀實現的,但是別忘了我們有字面量,實際上可以和c/c++類似的簡潔地建立和使用二維陣列。這裡總結了建立二維陣列的兩種方法以及陣列的訪問方式。

通過字面量建立和使用二維陣列(推薦)

// 1.字面量建立二維陣列並訪問(推薦)

nsarray *array2d = @[

@[@11,@12,@13],

@[@21,@22,www.cppcns.com@23],

@[@31,@32,@33]

];// 字面量訪問方式(推薦)

nslog(@"array2d[2][2]:%@",array2d[2][2]);

// 陣列物件函式訪問

nslog(@"array2d[2][2]:%@",[[array2d objectatindex:2] objectatindex:2]);

列印結果:

2017-01-05 21:59:49.694 singleview[10483:506166] array2d[2][2]:33

2017-01-05 21:59:49.695 singleview[10483:506166] array2d[2][2]:33

通過巢狀原本的陣列物件使用二維陣列

// 2.另外一種迴圈巢狀穿件二程式設計客棧維陣列的方式

nsmutablearray *mularrayd1 = [[nsmutablearray alloc]init]; // 第一維陣列

// 新增第二維

for(nsuinteger i = 1;i <= 3; i++)

// 字面量訪問方式(推薦)

nslog(@"array2d[2][2]:%@",mularrayd1[2][2]);

// 陣列物件函式訪問

nslog(@"array2d程式設計客棧[2][2]:%@",[[mularrayd1 objectatindex:2] objectatindex:2]);

列印結果:

2017-01-05 21:59:49.695 singleview[10483:506166] array2d[2][2]:33

2017-01-05 21:59:49.695 singleview[10483:506166] arr程式設計客棧[2][2]:33

問題:oc中是否有二維陣列,如何實現?

oc中沒有二維陣列,但可以通過一維陣列的巢狀實現。

本文標題: ios開發基礎之二維陣列詳解

本文位址:

C 之二維陣列

在第七單元中,程式清單7.10 strgback.cpp,部分如下 include char buildstr char c,int n prototype int main 輸出如下 enter a character l enter an integer 5 lllll done 請按任意鍵繼續...

二維陣列詳解

問題 cannot convert from double 10 10 to double 例如 double arry 5 10 double pp pp arry 直接的賦值會提示錯誤 cannot convert from double 10 10 to double 解決方法 double ...

詳解二維陣列

一 定義 int arr 3 int brr 3 4 對比一位陣列,二維陣列具有行和列兩個引數,在定義上,與一維陣列相似 資料型別 陣列名 行 列 二 初始化 同樣,對於一維陣列的初始化,如下所示 int arr 3 int arr 3 其餘預設為0 那麼,二維陣列呢?二維陣列的初始化採用行優先的原...