在引入堆和栈之前,先要知道,iOS中的内存管理范围:
OC对象需要进行内存管理,非oc对象不需要进行内存管理,比如基本数据类型
OC对象存放于堆里面(堆内存要程序员手动回收)
非OC对象一般放在栈里面(栈内存会被系统自动回收)
堆里面的内存是动态分配的,所以也就需要程序员手动的去添加内存、回收内存
另外写一个冒泡排序吧,水平有限,还望指正:
NSMutableArray * array1 =[[NSMutableArray alloc]initWithObjects:@"zhishi",@"wag",@"bge",@"hao",@"chishiqu",@"xiaomi", nil];
for(inti =0; i<[array1count]-1; i++) {
for(intj =0; j<[array1count]-1-i; j++) {
if(([array1[j]compare:array1[j+1]]) ==NSOrderedDescending){
//交换
[array1exchangeObjectAtIndex:j withObjectAtIndex:j+1];
NSLog(@"%@",array1);
}
}
}
网友评论