Obj-C中的不可变数组NSArray常用方法

//

//  main.m

//  nsarray

//

//  Created by Mr.Juice on 15/4/3.

//  Copyright (c) 2015 Mr.Juice. All rights reserved.

//


#import <Foundation/Foundation.h>


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

    

    //—————————————————不可变数组—————————————————————

    /*

     

     Obj-C中的数组在使用时的注意事项:

     

     1.数组中不能存放基本数据类型,只能存放对象

     2.数组在使用时不能越界

     3.一个数组中存放的对象类型必须一致

     

     */

    

    //1.数组的创建

    NSString *s1 = @"zhangsan";

    NSString *s2 = @"lisi";

    NSString *s3 = @"王五";

    

    NSArray *array1 = [[NSArray alloc]initWithObjects:s1,s2,s3, nil];

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

    

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

    

    //2.objectAtIndex: 通过下标取数组

    NSString *s4 = [array1 objectAtIndex:2];

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

    

    //3.count: 数组中元素的个数

    NSUInteger i = [array1 count];

    NSLog(@"%ld",i);

    

    //4.containObject: 判断数组中是否包含某一个对象

    BOOL isContain = [array1 containsObject:@"lisi"];

    NSLog(@"%hhd",isContain);

    //NSLog(@"%@",isContain);


    //5.indexOfObject: 查找一个对象在数组中的下标位置

    NSInteger index = [array1 indexOfObject:@"王五"];

    if (index == NSNotFound) {

        NSLog(@"没有此元素。");

    }

    else{

        NSLog(@"index = %ld",index);

    }

    

    //6.componentsJoinedByString:使用连接符,将数组中的字符串拼接

    NSString *joinString = [array1 componentsJoinedByString:@"-"];

    NSLog(@"%@",joinString);

    

    //componentsSeparatedByString: 字符串的分割

    NSArray *separatString = [joinString componentsSeparatedByString:@"-"];

    NSLog(@"%@",[separatString description]);

    

    //7.lastObject: 访问数组中的最后一个元素

    NSString *laststr = [array1 lastObject];

    NSLog(@"%@",laststr);

    

    //8.arrayByAddingObject: 追加元素

    NSArray *array2 = [array1 arrayByAddingObject:@"追加元素"];

    NSLog(@"%@",array2);

    

    //—————————————————————————数组的遍历—————————————————————————————

    

    //1.普通方法

    for (int i=0; i<[array2 count]; i++) {

        NSString *str2 = [array2 objectAtIndex:i];

        NSLog(@"%@",str2);

    }

    

    //2.快速便利

    for(NSString *str3 in array1){

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

    }

    

    //—————————————————————数组的创建、访问的新语法——————————————————————

    

    //1.创建数组

    NSArray *array3 = @[s1,s2,s3];

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

    

    //等价于:

    //NSArray *array3 = [NSArray arrayWithObjects:s1,s2,s3,nil];

    

    //2.使用下标访问数组

    NSString *str4 = array3[1];

    NSLog(@"%@",str4);

    

    return 0;

    

}


//———————————————————————以下是运行结果———————————————————————————————

2015-04-03 22:46:00.691 nsarray[766:79263] array1 = (

    zhangsan,

    lisi,

    "\U738b\U4e94"

)

2015-04-03 22:46:00.694 nsarray[766:79263] s3 = 王五

2015-04-03 22:46:00.694 nsarray[766:79263] s4 = 王五

2015-04-03 22:46:00.695 nsarray[766:79263] 3

2015-04-03 22:46:00.695 nsarray[766:79263] 1

2015-04-03 22:46:00.695 nsarray[766:79263] index = 2

2015-04-03 22:46:00.695 nsarray[766:79263] zhangsan-lisi-王五

2015-04-03 22:46:00.696 nsarray[766:79263] (

    zhangsan,

    lisi,

    "\U738b\U4e94"

)

2015-04-03 22:46:00.696 nsarray[766:79263] 王五

2015-04-03 22:46:00.696 nsarray[766:79263] (

    zhangsan,

    lisi,

    "\U738b\U4e94",

    "\U8ffd\U52a0\U5143\U7d20"

)

2015-04-03 22:46:00.696 nsarray[766:79263] zhangsan

2015-04-03 22:46:00.696 nsarray[766:79263] lisi

2015-04-03 22:46:00.697 nsarray[766:79263] 王五

2015-04-03 22:46:00.697 nsarray[766:79263] 追加元素

2015-04-03 22:46:00.697 nsarray[766:79263] str3 = zhangsan

2015-04-03 22:46:00.697 nsarray[766:79263] str3 = lisi

2015-04-03 22:46:00.697 nsarray[766:79263] str3 = 王五

2015-04-03 22:46:00.697 nsarray[766:79263] array3 = (

    zhangsan,

    lisi,

    "\U738b\U4e94"

)

2015-04-03 22:46:00.697 nsarray[766:79263] lisi

Program ended with exit code: 0



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值