Objective-C( Foundation框架 一 数组(NSArray))

OC数组

NSArray是静态的数组,就是它所指向的内容是不可改变的,它指向一段内存区域,一旦初始化,不能通过它对该内存区域的数据进行修改操作,但是它可以读数据。

NSMutableArray是动态的是NSArray的子类,可以对所指向的内存区域内容进行更改,并可以增加数组内容

NSArray和NSMutableArray的第一个数据的下标为0。

1、NSArray 不可变数组

[array1 count]: 数组的长度。

    // 创建OC数组对象
    NSArray *array = [NSArray arrayWithObject:@"jack"];    

    // nil是数组元素结束的标志
    NSArray *array1 = [NSArray arrayWithObjects:@"jack",@"haha",nil];
    NSLog(@"%ld",array1.count); // 输出数组的长度

[array1 objectAtIndex:0]: 访问数组中元素

array1[0];

    NSArray *array1 = [NSArray arrayWithObjects:@"jack",@"haha",nil];
    // 访问输出数组元素
    NSLog(@"%@",[array1 objectAtIndex:1]);
    NSLog(@"%@",array1[0]);

快速创建OC数组对象:

[NSArray arrayWithObjects;@"jack",@"haha" ...,nil] :向数组对象初始化赋值。这里可以写任意对象的指针,结尾必须使用nil。

     // 快速创建NSArray数组对象
     NSArray *array = @[@"jack",@"rose‘,@"haha"];   NSLog(@"%@",array1);

快速遍历NSArray数组

    NSArray *array = @[@"jack",@"haha"];

    // id obj代表着数组中的每一个元素
    for (id obj in array){

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

找出元素在数组中的位置

    NSArray *array = @[@"jack",@"haha"];

    // id obj代表着数组中的每一个元素
    for (id obj in array) {
        // 找出obj元素在数组中的位置
        NSUInteger i = [array indexOfObject:obj];

        NSLog(@"%ld - %@", i, obj);
    }

利用block

    NSArray *array = @[@"jack",@"haha"];

    // 每遍历到一个元素,就会调用一次block
    // 并且当前元素和索引位置当做参考传给block
    [array enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) {
        NSLog(@"---------");
    }];/*  Bool *stop   if(idx == 0){  停止遍历  *stop = YES;}*/
时间: 2024-08-08 20:55:50

Objective-C( Foundation框架 一 数组(NSArray))的相关文章

Objective - c Foundation 框架详解2

Objective - c  Foundation 框架详解2 Collection Agency Cocoa provides a number of collection classes such as NSArray and NSDictionary whose instances exist just to hold onto other objects. cocoa 提供了一系列的集合类,例如,NSarray,NSdictionary.它们存在的目的就是为了保持其他对象. 1.1.1N

OC学习篇之---Foundation框架中的NSArray类和NSMutableArray类

在之前的一篇文章中介绍了Foundation框架中的NSString类和NSMutableString类: http://blog.csdn.net/jiangwei0910410003/article/details/41788223 今天我们继续来看一下Foundation框架中的NSArray类和NSMutableArray类,其实NSArray类和Java中的List差不多,算是一种数据结构,当然我们从这两个类可以看到,NSArray类是不可变的,NSMutableArray类是可变的.

(转载)OC学习篇之---Foundation框架中的NSArray类和NSMutableArray类

在之前的一篇文章中介绍了Foundation框架中的NSString类和NSMutableString类,今天我们继续来看一下Foundation框架中的NSArray类和NSMutableArray类,其实NSArray类和Java中的List差不多,算是一种数据结构,当然我们从这两个类可以看到,NSArray类是不可变的,NSMutableArray类是可变的. 下面就先来看一下NSArray类: 一.NSArray类 1 // 2 // main.m 3 // 16_NSArray 4 /

黑马程序员-Foundation框架之数组和字典

一.Foundation框架简介 Foundation框架,顾名思义就是基础框架.基础框架上的类都是与用户界面无关的,为所有的程序开发提供一个基础.OC的基础框架常用的类包括:数组,字典,数字,字符串等以及它们的子类.要使用这个框架需要在引入头文件#import <Foundation/Foundation.h> 二.数组 NSArray类以及它的子类NSMutableArray,一个是不可变数组,一个是可变数组.下面通过代码来看一下它的一些基本的用法. 1 #import <Found

Objective-C( Foundation框架 一 数组(NSMutableArray))

NSMutableArray:可变数组 NSMutableArray是NSArray的子类 创建NSMutableArray数组对象 添加数组元素: // 创建数组 NSMutableArray *array = [NSMutableArray arrayWithObject:@"lier",@"hello",nil]; [array addObject:[[Person alloc] init]]; // 添加元素 [array addObject:@"

黑马程序员--Foundation框架之--NSArray类以及它的子类NSMutableArray类

今天我们继续来看一下Foundation框架中的NSArray类和 NSMutableArray类,NSArray类 是不可变的,NSMutableArray类是可变的. 一.NSArray类 NSArray中不可以存放基本数据类型,只能存放类的实例,如果需要将基本类型.结构体放入到数组中得话,需要通过NSNumber/NSValue进行数据的封装 同时不能在NSArray中存储nil // // main.m // 16_NSArray // // Created by waterfoxjie

Objective-C语言Foundation框架

Mac OS X开发会使用Cocoa框架,它是一种支持应用程序提供丰富用户体验的框架,它实际上由:Foundation和Application Kit(AppKit)框架组成.iOS开发,会使用Cocoa Touch框架,它实际上由:Foundation和UIKit框架组成. • AppKit和UIKit框架都是与窗口.按钮.列表等相关的类.Foundation是Mac OS X和iOS应用程序开发的基础框架,它包括了一些基本的类,如:数字.字符串.数组.字典等. • 基本数据类型,int.ch

Foundation框架—— 数组 (NSArray NSMutableArray )

基础知识回顾 1.在给可变数组添加元素时,要保证该数组已被初始化 2.在遍历可变数组时,不能对其进行增删改 3.NSMutableArray继承自NSArray,几乎拥有NSArray的一切方法. 4.OC数组只能存放OC对象,不能存放非OC对象,如int,结构体和枚举等. NSArray NSArray *arr=[NSArray array];//初始化一个空数组 NSArray *arr1=[NSArrayarrayWithObject:@"123"];//初始化一个元素的数组

Objective C Foundation基础框架[转]

<pre class="cpp" name="code">iOS Foundation基础框架就是以Foundation.h头文件的库 #import <Foundation/Foundation.h> Mac OS X和iOS都使用了Foundation基础框架.该框架中有很多日后开发常用的API,非常基础重要.以下就常用的类和结构做个介绍. NSObjct NSObject类,是ObjC类族中的根类.NSObject有一些高级特性支持,在