美文网首页
Object c数组的操作

Object c数组的操作

作者: 奔跑的小小鱼 | 来源:发表于2017-04-10 22:24 被阅读14次

    本节学习内容:

    1.为数组添加对象

    2.数组的提取

    3.字符串分割

    4.数组元素拼接

    5.数组遍历


    【main.m】

    #import<Foundation/Foundation.h>

    int main(int argc,const char*argv[])

    @autorelesasepool{

    【1.为数组添加对象】

    //数组的添加

    NSArray *arrray1=[NSArray arrayWithObjects:@"one",@"two',nil];

    NSLog(@"array1=@",array1);

    打印结果:array1=(one,two)

    //给数组添加一个无素,需求接受该方法的返回值,并不是直接修改原数组对象而是创建一个新的临时数组

    array1=[array1 arrayByAddingObject:"three"];

    NSLog(@"array1=@",array1);

    打印结果:array1=(one,two,three)

    //给数组添加多个元素

    array1=[array1 arrayByAddingObjectsFromArray:@[@"four",@"five",@"six"]];

    NSLog(@"array1=@",array1);

    打印结果:array1=(one,two,three,four,five,six)


    【2.数组的提取】

    //提取数组中指定范围的元素,上标默认从0开始

    NSArray *subArray1=[arrary1 subarrayWithRang:NSMakRange(2,3)];

    NSLog(@"subArray1=@",subArray1);

    打印结果:array1=(three,four,five)

    //创建一个可变的下标集合对像

    NSMutableIndexSet *indexSet=[NSMutableIndexSet indexSetWithIndex:1];

    //创建一个可变集合对象添加元素

    [indexSet addIndex:3];

    [indexSet addIndex:4];

    [NSArray (subArray2=[array1 objectsAtIndexes:];

    NSLog(@"subArray2=@",subArray2);

    打印结果:subArray2=(two,four,five)


    【3.字符串分割】

    NSString *str="I am a   good  boy";

    //返回值是一个数组对象,以字符串整体进行分隔

    NSArray *array2=[str conponentsSeparateByString:@" "];

    NSLog(@"array2=@",array2);

    打印结果:subArray2=(I,am,a,"","",good,"",boy)

    NSString *str1=@"I :am :good :boy";

    NSArray *array3=[str componentsSeparatedByString:@" :"];

    NSLog(@"array3=@",array3);

    打印结果:subArray3=("I am a good boy")

    //以字符集的方式进入分割,以字符集合中的每一个字符作为分割符

    NSArray *array4=[str1 componentsSeparatedByCharactersInSet:NSCharacteSet characterSetwithCharactersInString:@":"]];

    NSLog(@"array4=@",array3);

    打印结果:subArray4=("I ,"",am,"" ,good ,"",boy")

    【4.数组元素拼接】

    NSArray *array5=@[@"one',@"two",@"five",[NSNumber numberWithInt:123]];

    NSString *str3=[array5 componentsJoindyByString:@" "];

    //@" "表示连接方式当前是空格

    NSLog(@"str3=@",str3);

    打印结果:str3=one two five 123

    【5.数组遍历】

    1.通过数组元素的下标遍历数组

    NSArray *sortArray=@[@"hello",@"welcome",@"china",@"world',@"baidu'];

    //求出数组元素个数

    SNInteger cnt=[sortArray count];

    for(NSInteger i=0; i<cnt;i++){

    NSLog(@"%@",[sortArray objectAtIndex:i]);

    打印结果: hello  welcome  china  world baidu

    2.通过枚举器法

    //创建一个倒序的枚举器,倒序遍历数组,返回值NSEnumerator对像

    NSEnumerator *reverseEnum=[sorArray reverseObjectEnumerator];

    id objec=nil;

    while(obj=[reverseEnum nextObject]){

    NSLog(@"obj=%@,obj");

    打印结果:obj=baidu  world  china welcome hello

    //创建一个正序的枚举器

    NSEnumerator *enmuerator=[sortArray objectEnumerator];

    id obj2=nil;

    while (obj2=[enumerator nextObjext]){

    NSLog(@"obj2=%@",obj2);

    }

    打印结果:obj2= hello welcome china world baidu

    3.快速枚举法

    //oc语法新引入的循环结构,obj3是否在sortArray中继续循环,能从soortArray中取出元素,判断是否在数组中,在继续循环,不在侧退出循环

    for(id obj3 in sortArray){

    NSLog(@"obj3=%@",obj3);

    //打印结果:obj3=hello welcome china world baidu

    }

    return 0;

    }

    @end

    相关文章

      网友评论

          本文标题:Object c数组的操作

          本文链接:https://www.haomeiwen.com/subject/slmeattx.html