Snail—OC学习之数组NSArray

NSArray是OC中的数组,是用来存储对象的。可以是重复的、有序的

新建一个Dog的类,在main.m中引入Dog的头文件

#import <Foundation/Foundation.h>
#import "Dog.h"

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

    @autoreleasepool {

        Dog * dog = [[Dog alloc] init];

        //数组的创建方式
        //空数组创建
        NSArray * arrry = [[NSArray alloc]init];

        //数组用于存储对象的,不能存储基本数据类型。
        NSArray * array2 = [[NSArray alloc]initWithObjects:@"1",@"12",@"sad",dog,nil];
        //打印形式为小括号包含,相应元素以逗号分隔  dog打印出地址来
        NSLog(@"%@",array2);

        NSArray * array3 = [[NSArray alloc] initWithArray:array2];
        NSLog(@"%@",array3);

        //自xcode4.6以后,oc提供了简易创建不可变数组的方法
        NSArray * arr = @[@"qweqwe",@"sadsad",dog];
        NSLog(@"%@",arr);

        //类方法的创建形式
        NSArray * array4 = [NSArray array];
        NSArray * arr2 = [NSArray arrayWithObjects:@"hell",@"dasds",@"dsssds", nil];
        //以一个数组来创建新的数组
        NSArray * arr3 = [NSArray arrayWithArray:arr2];

    }
    return 0;
}

NSArray的相关方法

#import <Foundation/Foundation.h>

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

    @autoreleasepool {

        NSArray * array = @[@"one",@"two",@"three"];

        // 获取数组长度/个数  count属性是readonly 只有get方法
        int count = [array count];
        NSLog(@"%lu",array.count);

        //获取数组中相应位置的元素
        NSString * str = [array objectAtIndex:1];

        //xcode4.6简易取对象方法
        NSString * str1 = array[1];

        //取得最后一个元素
        NSLog(@"%@",[array lastObject]);

        //遍历数组
        for (int i = 0; i < array.count; i++) {
            NSLog(@"%@",[array objectAtIndex:i]);
        }

    }
    return 0;
}

字符串的拼接与切割

#import <Foundation/Foundation.h>

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

    @autoreleasepool {

        NSString * str = @"I am Snail";

        //切割字符串 以空格为条件切割
        NSArray * array = [str componentsSeparatedByString:@" "];

        //拼接字符串 所需参数为拼接条件 以,拼接
        NSString * str1 = [array componentsJoinedByString:@","];

        NSString * str3 = @"I am Lufy, I want to beacome king of the sea";

        //以多个条件切割
        //参数是OC中的集合  以空格、逗号、叹号多个字符对字符串进行切割
        NSCharacterSet * set = [NSCharacterSet characterSetWithCharactersInString:@" ,!"];
        NSArray * array1 = [str3 componentsSeparatedByCharactersInSet:set];

    }
    return 0;
}

这就是NSArray类常用的方法

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-08-10 23:31:05

Snail—OC学习之数组NSArray的相关文章

Snail—OC学习之本地数据持久化(plist)

plist文件的格式 plist是一种数据持久化的文件 1.最外层通常为数组或者字典 2.plist里面的数据 只局限于数组.字典.逻辑值(BOOL).NSNumber.NSData.NSDate.字符串等数据类型 3.无法存储自定义类型的对象 plist作用 1.不适用它作为缓存 无法存储自定义类型的对象 2.通常存储长时间不容易发生变化的数据.国家.省市区.汽车品牌.项目的info.plist工程的设置信息 3.占用内存小 #import <Foundation/Foundation.h>

Snail—OC学习之可变数组NSMutableArray

可变数组NSMutableArray 继承于 NSArray  NSArray的所有方法都适用于可变数组 下面是可变数组的一些初始化方法 #import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { @autoreleasepool { //可变数组继承于不可变数组 //空的可变数组 NSMutableArray * array = [[NSMutableArray alloc] init]; //传入0

【OC学习-18】NSArray的初始化以及常用数组操作方法简单归纳

数组也分成可变和不可变,这个和NSString一样,初始化的方法也类似,对元素的操作也类似,具体如下. 多练习几遍,知道每个代表什么意思即可.开发项目时再加深印象. //不可变数组 //数组的元素只能是对象,如果是int和float的话,就用NSNumber转换一下才能用 //初始化的几种方式,可以一个元素.多个元素.从已有组复制.从文件.网址等 NSArray *arr1=[NSArray arrayWithObject:@"hello"]; NSArray *arr2=[NSArr

Snail—OC学习之文件操作(非读写)

#import <Foundation/Foundation.h> //宏定义一个文件夹的路径信息 #define path @"/Users/XXX/Desktop/Snail" //宏定义一个文件的路径 #define filePath @"/Users/XXX/Desktop/Snail/Snail3/Snail.txt" int main(int argc, const char * argv[]) { @autoreleasepool { //

oc中的数组 NSArray

1 //oc允许使用c语言的数组,但是很多时候会用NSArray这个数组的类创建对象 2 //NSArray是不可变数组,它有个子类NSMutableArray可变数组 3 4 //1.创建数组 5 //这是一个数组的对象,数组的元素是“one two three” 6 NSArray *array=[[NSArray alloc] initWithObjects:@"one",@"two",@"three",nil]; 7 //数组的元素可以是

Snail—OC学习之类别Category

类别就是向类添加一些有用的功能或者方法 利于开发 类可以是系统类.可以是自定义类 类别跟子类是不一样的,类别只能添加一些方法 属性变量什么的不可以添加 不创建新类,即可对已有类进行扩展 做项目的时候 跟其他程序员会更好的合作 新建类别的图放在最后面 我们为系统类NSArray添加一个打印方法 使得能输出中文 界面如下 然后再NSArray+MyNSLog.h中声明一个函数 #import <Foundation/Foundation.h> @interface NSArray (MyNSLog

Snail—OC学习之NSNumber

在以后的学习或者以后做项目的时候 会希望把基本数据类型,例如:int.float等等数值 也存到数组或者字典中 因为数组.字典只能存储对象 所以,NSNumber类可以对基本数据进行封装成一个对象 进行存储 #import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { @autoreleasepool { NSNumber * intNumber = [NSNumber numberWithInt:11]

[oc学习笔记]数组的遍历和排序

1 //数组的遍历(可变数组举例) 2 //for遍历 3 NSMutableArray *aa = [NSMutableArray array]; 4 [aa addObjectsFromArray:@[@"ss",@"ddd",@"sad"]]; 5 for (int i = 0; i < aa.count; i++) { 6 NSLog(@"%@",[aa objectAtIndex:i]); 7 } 8 //快速

Snail—OC学习之本地数据持久化(归档)

#import <Foundation/Foundation.h> #import "Dog.h" int main(int argc, const char * argv[]) { @autoreleasepool { NSString * filePath = @"/Users/student/Desktop/snail/array.data"; //对官方类创建的对象进行存储 NSArray * array = @[@"one"