nsarray是不可變的陣列,只能夠存放物件,但是可以存放不同型別的物件
首先定義乙個類
#import @inte***ce person : nsobject@property nsstring *name;
- (id)initwithname:(nsstring *)name;
@end
#import "person.h
"@implementation person
- (id)initwithname:(nsstring *)name
return
self;
}@end
陣列的初始化
//建立陣列幾種形式
nsarray *array = [[nsarray alloc] initwithobjects:p1, @"
nsstring
",@13,nil];//
建立乙個不可改變的陣列 包括多個物件
array = [nsarray arraywithobjects:p1, @"
nsstring
",@13,nil]; //
工程模式建立(便利構造器)建議用這樣方式建立(不需要管理記憶體)
nslog(@"%@"
,array);
id ch[
4]= ;
nsarray *array1 = [[nsarray alloc] initwithobjects:ch count:4];//
由乙個陣列建立
array1 = [nsarray arraywithobjects:ch count:4];//
工廠模式
nslog(@"%@"
,array1);
nsarray *array2 = [[nsarray alloc] init];//
不可變的空陣列
array2 =[nsarray array];
nslog(
@"%@
",array2);
array1 = [nsarray arraywithobject:@"
abc"];//
建立乙個物件的不可變陣列
陣列的常用方法測試
//獲取陣列長度
nsinteger length =[array count];
nslog(
@"%ld
",length);
//獲取陣列中的物件
id obj = [array objectatindex:0
]; nslog(
@"%@
", obj);
//也可以用下面這種語法
obj = array[0
]; nslog(
@"%@
", obj);
//獲取物件在陣列中的位置
nsinteger index = [array indexofobject:@13
]; nslog(
@"%lu
", index);
//遍歷陣列
//1常規方式
for (int i = 0; i < [array count]; i++)
//2快速遍歷
for(id obj in
array)
//將陣列轉換為字串
nsarray *patharray = [nsarray arraywithobjects:@"
here
", @"
be", @"
dragons
", p1, @13
,nil];
nslog(
@"%@
",[patharray componentsjoinedbystring:@"-"
]);
//陣列比較
nsarray *arrayequal1 = [nsarray arraywithobjects:@"
here
", @"
be", @"
dragons
", p1, @13
,nil];
nsarray *arrayequal2 = [nsarray arraywithobjects:@"
here1
", @"
be", @"
dragons
", p1, @13
,nil];
nslog(
@"%hhd
",[arrayequal1 isequaltoarray:arrayequal2]);//
結果為0(no)
nslog(@"
%hhd
",[arrayequal1 isequaltoarray:arrayequal1]);//
1(yes)
//陣列的排序
nsarray *arrsort = @[@"
aaa", @"
hhh",@"
bbb"
];
//運用selector
arrsort =[arrsort sortedarrayusingselector:@selector(compare:)];
nslog(
@"%@
",arrsort);
//運用block
arrsort = [arrsort sortedarrayusingcomparator:^nscomparisonresult(id obj1, id obj2) ];
nslog(
@"%@
",arrsort);
javaScript 陣列方法
1 array.concat 合併陣列 var a a b c var b x y z var c a.concat b,true c a b c x y z true 2 array.join 把陣列轉換成字串,預設是join var a a b c a.push d var c a.join c...
js陣列方法
array.json 方法將陣列中所有元素都轉化為字串並連線在一起 預設逗號 返回生成的字串,原陣列不改變 例 var a 1 2,3 a.join 1,2,3 a.join 1 2 3 array.reverse 方法將陣列中的元素顛倒順序 返回逆序的陣列,原陣列改變 例 var a 1,2,3 ...
封裝陣列方法
標籤 空格分隔 未分類 push 1 封裝乙個函式,這個函式的名字叫做 push 2 這個函式的引數,第乙個是乙個陣列,第二個以後是任意的資料 3 呼叫這個函式,那麼會把第二個以後的所有引數,依次放到第乙個引數也就是那個陣列的最後乙個位置。4 這個函式返回值,是放入這些資料之後陣列的長度。var a...