4.OC數組和字典

<span style="font-size:14px;">

#import <Foundation/Foundation.h>
//NSArray:
int main(int argc, const char * argv[])
{
    @autoreleasepool
    {
        //<span style="color:#ff0000;">1.構造數組</span>
//        int a[5]={1,2,3,4,5};//c數組,元素必須爲同類型;int
        //<span style="color:#ff0000;">OC的數組裏面可以存儲任意的對象,但是不能存儲普通的數據類型:int float char struct 等都不能存儲;</span>
        NSString *str = @"hello";//str是對象指針,可以存儲在數組中
        NSArray *array = [[NSArray alloc]initWithObjects:@"1",@"2",@"3",@"4",@"5", str,nil];
        NSLog(@"array=%@",array);
        //<span style="color:#ff0000;">利用一個數組去創建新的數組</span>
        NSArray *array2 = [[NSArray alloc]initWithArray:array];
        NSLog(@"array2=%@",array2);
        
        NSArray *array3 = @[@"1",@"2",@"3",@"4",@"5"];
        NSLog(@"array3=%@",array3);
        
        NSArray *array4 = [NSArray arrayWithObjects:@"1",@"2",@"3",@"4",@"5", str,nil];
        NSLog(@"array4=%@",array4);
        
        NSArray *array5 = [NSArray arrayWithArray:array4];
        NSLog(@"array5=%@",array5);
        
        //<span style="color:#ff0000;">2.數組元素的個數</span>
        NSUInteger nsi = [array5 count];
        NSLog(@"nsi = %lu",nsi);
        
        //<span style="color:#ff0000;">3.訪問數組元素  下標從0開始;</span>
        NSString *str1 = [array5 objectAtIndex:0];
        NSLog(@"str1=%@",str1);
        NSString *str2 = array[0];//和C語言中的訪問數組元素的方法保持一致;
        NSLog(@"str2=%@",str2);
        
        //<span style="color:#ff0000;">4.遍歷數組</span>
        NSUInteger nsi1 = [array5 count];
        for (NSInteger i=0; i<nsi1; i++)
        {
            NSLog(@"第%ld個元素是%@",i,array5[i]);
        }
        
        //<span style="color:#ff0000;">5.快速枚舉法 for in</span>
        for (NSString *tinystr in array5)
        {
            //tinystr 是每次訪問到的數組的元素;
            NSLog(@"%@",tinystr);
        }
        
        //5.最後和第一個元素
        [array5 firstObject];
        [array5 lastObject];
        
        
        //6.<span style="color:#ff0000;">通過元素查找下標</span>
        NSArray *array6 = @[@"sunwukong",@"Tangseng",@"zhubajie"];
        NSUInteger index = [array6 indexOfObject:@"Tangseng"];//取出下標
        if(index == NSNotFound)
        {
            NSLog(@"查無此人");
        }
        else
        {
            NSLog(@"找到此人%lu",index);
        }
        //帶範圍查找
        NSUInteger index2 = [array6 indexOfObject:@"Tangseng" inRange:NSMakeRange(2, 1)];
        if(index2 == NSNotFound)
        {
            NSLog(@"查無此人");
        }
        else
        {
            NSLog(@"找到此人%lu",index2);
        }
        //7.<span style="color:#ff0000;">看一個數組是否包含一個元素</span>
        BOOL cmp = [array6 containsObject:@"Tangjseng"];
        if(cmp == 1)
        {
            NSLog(@"包含此人");
        }
        else
        {
            NSLog(@"不包含此人");
        }
        
        
        //<span style="color:#ff0000;">8.分割字符串到數組</span>
        NSString *str3 = @"劉德華,華仔,男,13612345678,01068523110,01087654321,映藝娛樂,演員,朋友,香港,hongkong,9.27,[email protected],123456,[email protected],劉天王";
       NSArray *subString = [str3 componentsSeparatedByString:@","];
        NSLog(@"%@",subString);//有些對象不能解析,因爲數組對存儲的對象沒有要求,數組不知道里面存的是什麼對象,索引無法正確解析對象
        for (NSString *sub in subString)
        {
            //數組的元素先賦值給sub,sub是個字符串對象;
            NSLog(@"%@",sub);//按照字符串類型取解析;
        }
        
       NSString *strnew = [subString componentsJoinedByString:@"-->"];
        NSLog(@"%@",strnew);
  
    }
    return 0;
}
</span>

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章