NSArray数组

//1.创建集合
            //NSArray 是不可变数组,一旦创建完成就不能够对数组进行,添加,删除等操作
            NSArray * array = [[NSArray alloc] init];

            NSLog(@"%@",array);

            //2.通过构造方法的方式创建一个NSArray
            //在创建一个NSArray的时候,集合的最后一个元素一定是nil
            NSArray * array1 = [NSArray arrayWithObjects:@"one",@"two",@"three", nil];
            NSLog(@"%@",array1);

            //3.数组中可以存储不同类型的对象
            NSNumber * number = [NSNumber numberWithInt:10];
            NSArray * array2 = [[NSArray alloc] initWithObjects:@"one",@"two",number, nil];
            NSLog(@"array2  %@",array2);

            //4.数组实际上存储的时对象的地址,同样也可以存储数组的地址
            NSArray * a1 = [[NSArray alloc] initWithObjects:@"one",@"two",@"three", nil];
            NSArray * a2 = [[NSArray alloc] initWithObjects:@"1",@"2",@"3", nil];
            NSArray * a3 = [[NSArray alloc] initWithObjects:a1,a2, nil];

            NSLog(@"a3 %@",a3);

            //5.存储自定义的对象
            //最好都给我重写 description方法
            Person * p1 = [[Person alloc] initWithName:@"xiaozhe" andAge:20];
            Person * p2 = [[Person alloc] initWithName:@"hell" andAge:18];
            Person * p3 = [[Person alloc] initWithName:@"marray" andAge:38];

            NSArray * array3 = [[NSArray alloc] initWithObjects:p1,p2,p3, nil];
            NSLog(@"array3  %@",array3);

            //6.数组中存储基本数据类型,
            //如果你要在数组中存储基本数据类型,请给我包装好了之后在去存 NSNumber
            //注意不要把nil值存储到NSArray中,会导致数据丢失
            NSString * str = nil;
            NSArray * array4 = [[NSArray alloc] initWithObjects:@"2",str,[NSNumber numberWithInt:23], nil];
            NSLog(@"array4 %@",array4);

            //7.创建数组的快捷方式
            NSArray * karray = @[@"a",@"b",@"c"];
            NSLog(@"karray %@",karray);

            //8.快速获得一个数组中的元素
            NSString * kstr = karray[0];
            NSLog(@"kstr %@",kstr);
        }
#pragma mark 从集合中取出对象

        {
            //9.从集合中取出数据
            NSArray * array = [[NSArray alloc] initWithObjects:@"one",@"two",@"three", nil];
            //数组的index时从0开始的
            NSString * str = [array objectAtIndex:0];
            NSLog(@"str %@",str);

            //10.获得数组的元素个数
            NSUInteger arrayCount = [array count];
            NSLog(@"arrayCount %d",arrayCount);

        }

#pragma mark 判断数组中是否存在某个对象
        {

            Person * p1 = [[Person alloc] initWithName:@"xiaozhe" andAge:20];
            Person * p2 = [[Person alloc] initWithName:@"nihao" andAge:30];

            NSArray * array = @[p1,p2];

            BOOL isContain = [array containsObject:p1];
            if (isContain)
            {
                NSLog(@"存在");
            }else
            {
                NSLog(@"不存在");
            }

        }
时间: 2024-08-14 11:26:45

NSArray数组的相关文章

NSArray - 数组

// // main.m // OC04-task-07 // // Created by Xin the Great on 15-1-24. // Copyright (c) 2015年 Xin the Great. All rights reserved. // #import <Foundation/Foundation.h> #import "NSArray+Log.h" #import "Person.h" int main(int argc,

Swift中实现Array数组和NSArray数组的相互转换与遍历

Array是Swift中的数组数据类型.而NSArray是OC中的数组数据类型.两者有差别有联系.在Swift中有时候难免会使用到OC中的一些东西.今天我们就来Swift中使用NSArray和Array,而且进行转化. (1)声明一个Array数组.并进行遍历.代码例如以下: let stringArray: Array<String> = ["10", "20","30","40","50"]

SEL如何保存到NSArray数组中

首先,SEL是不可以保存到array数组中去的. 其次,SEL有两种创建方法: SEL s1 = @selector (test1); // 将test1方法转换为NSString对象 SEL s2 = NSSelectorFromString ( @"test1" ); // 将一个字符串 方法 转换成为SEL对象 NSArray无法保存SEL,但是可以保存NSString. 所以我们利用第二种创建方法,讲SEL的方法名以字符串的方式保存到NSArray数组中即可. 举个栗子: NS

15.Object-C--NSArray数组的排序

NSArray数组的排序有三种方式: 1.简单排序(sortedArrayUsingSelector:) 2.利用block语法(sortedArrayUsingComparator:) 3.高级排序(sortedArrayUsingDescriptors:) 1.简单排序(sortedArrayUsingSelector:) 如果只是对字符串的排序,可以利用sortedArrayUsingSelector:方法就可以了,代码如下: 1 #pragma mark 数组排序 sortedArray

第四讲.NSString(字符串),NSArray(数组),NSNumber(代码)

1 #import <Foundation/Foundation.h> 3 int main(int argc, const char * argv[]) { 4 @autoreleasepool { 5 6 7 /* 8 ----------------------------------------------------------- 9 字符串的使用 10 ------------------------------------------------------------ 11 *

iOS NSArray数组过滤

//iOS-筛选数组内的元素 //在dataArray中里面,将在dataArray中的并且在filteredArray数组里面的元素过滤掉 //需要去掉的元素数组 NSMutableArray *filteredArray = [[NSMutableArray alloc]initWithObjects:@"1",@"3",@"9", nil]; //需要被筛选的数组 NSMutableArray *dataArray = [[NSMutabl

iOS 基础之NSArray数组去重

1.面试题 现在有一个数组arr1,它里面存储的字符串分别为@“zhangsan”@“lisi”@“wangwu”@“lisi”@“zhangsan”,请将它去重后赋值给可变数组arr2输出为:@“zhangsna”,@“lisi”,@“wangwu”. 解题思路: 1)创建一个可变字典 2)遍历这个数组将数组的字符串存储为这个字典的key和value 3)调用字典的一下任意一个方法 @property (readonly, copy) NSArray<KeyType> *allKeys; @

让NSArray数组中每个对象都调用的方法

1. [array valueForKey:@"title"]; //Returns an array containing the results of invoking valueForKey: using key on each of the array's objects. 使数组中的每个对象都调用valueForKey:方法,并且将每个对象调用方法的结果依次存入一个新的数组中,然后返回 2. [self  setValuesForKeysWithDictionary:dict

IOS小技巧——使用FMDB时如何把一个对像中的NSArray数组属性存到表中

http://blog.csdn.net/github_29614995/article/details/46797917 在开发的当中,往往碰到要将数据持久化的时候用到FMDB,但是碰到模型中的属性有数组,但是FMDB存放的属性通常只为Text,那我们改怎么办呢? 思路:1.创建一个表,先将模型的除数组以为的其他属性写入表中,名为t_groupBuyModel 2.创建一个表装载模型中的数组文本,名为t_images 3.当存入模型到表中的时候,遍历模型中的数组属性,让每一条数据都存入t_im