• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Objective-c之NSArray(NSMutableArray)

原作者: [db:作者] 来自: [db:来源] 收藏 邀请
/*---------------------------创建数组------------------------------*/
//NSArray *array = [NSArray alloc] initWithObjects:
@"One",@"Two",@"Three",@"Four",nil];

self.dataArray
= array;
[array release];

//- (unsigned) Count;数组所包含对象个数;
NSLog(@"self.dataArray cound:%d",[self.dataArray count]);

//- (id) objectAtIndex: (unsigned int) index;获取指定索引处的对象;
NSLog(@"self.dataArray cound 2:%@",[self.dataArray objectAtIndex:2]);


/*--------------------------从一个数组拷贝数据到另一数组(可变数级)----------------------------*/

//arrayWithArray:
//NSArray *array1 = [NSArray alloc] init];
NSMutableArray *MutableArray = [NSMutableArray alloc] init];
NSArray
*array = [NSArray arrayWithObjects:
@"a",@"b",@"c",nil];
NSLog(
@"array:%@",array);
MutableArray
= [NSMutableArray arrayWithArray:array];
NSLog(
@"MutableArray:%@",MutableArray);

array1
= [NSArray arrayWithArray:array];
NSLog(
@"array1:%@",array1);


//Copy

//id obj;
NSMutableArray *newArray = [NSMutableArray alloc] init];
NSArray
*oldArray = [NSArray arrayWithObjects:
@"a",@"b",@"c",@"d",@"e",@"f",@"g",@"h",nil];

NSLog(
@"oldArray:%@",oldArray);
for(int i = 0; i < [oldArray count]; i++)
{
obj
= [oldArray objectAtIndex:i] copy];
[newArray addObject: obj];
}
//
NSLog(@"newArray:%@", newArray);
[newArray release];


//快速枚举

//NSMutableArray *newArray = [NSMutableArray alloc] init];
NSArray *oldArray = [NSArray arrayWithObjects:
@"a",@"b",@"c",@"d",@"e",@"f",@"g",@"h",nil];
NSLog(
@"oldArray:%@",oldArray);

for(id obj in oldArray)
{
[newArray addObject: obj];
}
//
NSLog(@"newArray:%@", newArray);
[newArray release];


//Deep copy

//NSMutableArray *newArray = [NSMutableArray alloc] init];
NSArray *oldArray = [NSArray arrayWithObjects:
@"a",@"b",@"c",@"d",@"e",@"f",@"g",@"h",nil];
NSLog(
@"oldArray:%@",oldArray);
newArray
= (NSMutableArray*)CFPropertyListCreateDeepCopy(kCFAllocatorDefault, (CFPropertyListRef)oldArray, kCFPropertyListMutableContainers);
NSLog(
@"newArray:%@", newArray);
[newArray release];


//Copy and sort

//NSMutableArray *newArray = [NSMutableArray alloc] init];
NSArray *oldArray = [NSArray arrayWithObjects:
@"b",@"a",@"e",@"d",@"c",@"f",@"h",@"g",nil];
NSLog(
@"oldArray:%@",oldArray);
NSEnumerator
*enumerator;
enumerator
= [oldArray objectEnumerator];
id obj;
while(obj = [enumerator nextObject])
{
[newArray addObject: obj];
}
[newArray sortUsingSelector:@selector(compare:)];
NSLog(
@"newArray:%@", newArray);
[newArray release];



/*---------------------------切分数组------------------------------*/

//从字符串分割到数组- componentsSeparatedByString:
NSString *string = [NSString alloc] initWithString:@"One,Two,Three,Four"];
NSLog(
@"string:%@",string);
NSArray
*array = [string componentsSeparatedByString:@","];
NSLog(
@"array:%@",array);
[
string release];


//从数组合并元素到字符串- componentsJoinedByString:
NSArray *array = [NSArray alloc] initWithObjects:@"One",@"Two",@"Three",@"Four",nil];
NSString
*string = [array componentsJoinedByString:@","];
NSLog(
@"string:%@",string);



/*******************************************************************************************
NSMutableArray
******************************************************************************************
*/
/*---------------给数组分配容量----------------*/
//NSArray *array;
array = [NSMutableArray arrayWithCapacity:20];



/*--------------在数组末尾添加对象----------------*/
//- (void) addObject: (id) anObject;
//NSMutableArray *array = [NSMutableArray arrayWithObjects:
@"One",@"Two",@"Three",nil];
[array addObject:
@"Four"];
NSLog(
@"array:%@",array);



/*--------------删除数组中指定索引处对象----------------*/
//-(void) removeObjectAtIndex: (unsigned) index;
//NSMutableArray *array = [NSMutableArray arrayWithObjects:
@"One",@"Two",@"Three",nil];
[array removeObjectAtIndex:
1];
NSLog(
@"array:%@",array);



/*-------------数组枚举---------------*/
//- (NSEnumerator *)objectEnumerator;从前向后
//NSMutableArray *array = [NSMutableArray arrayWithObjects:
@"One",@"Two",@"Three",nil];
NSEnumerator
*enumerator;
enumerator
= [array objectEnumerator];

id thingie;
while (thingie = [enumerator nextObject]) {
NSLog(
@"thingie:%@",thingie);
}


//- (NSEnumerator *)reverseObjectEnumerator;从后向前
//NSMutableArray *array = [NSMutableArray arrayWithObjects:
@"One",@"Two",@"Three",nil];
NSEnumerator
*enumerator;
enumerator
= [array reverseObjectEnumerator];

id object;
while (object = [enumerator nextObject]) {
NSLog(
@"object:%@",object);
}


//快速枚举
//NSMutableArray *array = [NSMutableArray arrayWithObjects:
@"One",@"Two",@"Three",nil];
for(NSString *string in array)
{
NSLog(
@"string:%@",string);
}



/*******************************************************************************************
NSDictionary
******************************************************************************************
*/

/*------------------------------------创建字典------------------------------------*/
//- (id) initWithObjectsAndKeys;

//NSDictionary *dictionary = [NSDictionary alloc] initWithObjectsAndKeys:@"One",@"1",@"Two",@"2",@"Three",@"3",nil];
NSString *string = [dictionary objectForKey:@"One"];
NSLog(
@"string:%@",string);
NSLog(
@"dictionary:%@",dictionary);
[dictionary release];


/*******************************************************************************************
NSMutableDictionary
******************************************************************************************
*/

/*------------------------------------创建可变字典------------------------------------*/
//创建
NSMutableDictionary *dictionary = [NSMutableDictionary dictionary];

//添加字典
[dictionary setObject:@"One" forKey:@"1"];
[dictionary setObject:
@"Two" forKey:@"2"];
[dictionary setObject:
@"Three" forKey:@"3"];
[dictionary setObject:
@"Four" forKey:@"4"];
NSLog(
@"dictionary:%@",dictionary);

//删除指定的字典
[dictionary removeObjectForKey:@"3"];
NSLog(
@"dictionary:%@",dictionary);


/*******************************************************************************************
NSValue(对任何对象进行包装)
******************************************************************************************
*/

/*--------------------------------将NSRect放入NSArray中------------------------------------*/
//将NSRect放入NSArray中
NSMutableArray *array = [NSMutableArray alloc] init];
NSValue
*value;
CGRect rect
= CGRectMake(0, 0, 320, 480);
value
= [NSValue valueWithBytes:&rect objCType:@encode(CGRect)];
[array addObject:value];
NSLog(
@"array:%@",array);

//从Array中提取
value = [array objectAtIndex:0];
[value getValue:
&rect];
NSLog(
@"value:%@",value);


/*******************************************************************************************
从目录搜索扩展名为jpg的文件
******************************************************************************************
*/

//NSFileManager *fileManager = [NSFileManager defaultManager];
NSString *home;
home
= @"../Users/";

NSDirectoryEnumerator
*direnum;
direnum
= [fileManager enumeratorAtPath: home];

NSMutableArray
*files = [NSMutableArray alloc] init];

//枚举
NSString *filename;
while (filename = [direnum nextObject]) {
if([filename pathExtension] hasSuffix:@"jpg"]){
[files addObject:filename];
}
}

//快速枚举
//for(NSString *filename in direnum)
//{
// if([filename pathExtension] isEqualToString:@"jpg"]){
// [files addObject:filename];
// }
//}
NSLog(@"files:%@",files);

//枚举
NSEnumerator *filenum;
filenum
= [files objectEnumerator];
while (filename = [filenum nextObject]) {
NSLog(
@"filename:%@",filename);
}

//快速枚举
//for(id object in files)
//{
// NSLog(@"object:%@",object);
//}

文章来自:http://blog.sina.com.cn/s/blog_4adf31ea0100nlnp.html

鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
json字符串跟objective-c模型的相互转换发布时间:2022-07-12
下一篇:
如何制作 Objective-C 的UML图 [2]发布时间:2022-07-12
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap