Foundation框架的基本对象之数组对象

在程序设计中数组的使用非常频繁,Foundation框架提供了NS数组类型,NS数组类型包括可修改的和不可修改两种,只能用来存放相关的对象类型,OC为我们提供了相关的基本的数组操作,并对相关的数组操作进行了封装。

  1. 数组的定义

我们可以简单的把数组看做是把同一类型的数据有序的进行排列,进行同一存储,即同种类型数据的集合。

  1. 数组的声明

数组声明和变量声明类似

格式:数组类型  数组名【数组大小】例如 :int score[5];

数据类型  数组名【长度】=【数值1,数值2,……,数值n】。

例如:int score【5】={1,2,3,4,5};

若对数组的所有元素都赋予了初始值,则可以不用指定数组大小,系统将自动根据赋值的个数来确定数组的大小。

例如:int score[]={1,2,3,4,5,6}.

如果只是声明数组,而不为数组赋值,则数组的元素值是不确定的。

例如:int score【10】;里边元素值是不能确定的。

3.二维数组的声明和定义

数组名【下标1】【下标2】例如 int a[3][4]相当于3个数组长度为4的一维数组。

4.字符数组

字符数组初始化可以分为两种,一种是逐个赋值,另一种是用字符串直接给数组赋值。

其中,直接将字符串赋值给字符数组初始化,系统会自动将字符串中每个字符赋值给数组每个元素,末尾加上’\0’.

5.不可修改数组

当women要使用不可修改数组的时候,就要使用NSArray来进行操作。在程序中要使用数组对象就要在开头插入数组对象的头文件#import<Foundation/NSArray.h>

nil在oc中表示一个Objective-C对象,空对象。

在不可修改数组中,我们可以用:“arrayWithObjects”类方法对数组进行初始化,例如我们给city初始化  NSArray *city=[NSArray arrayWithObjects:@”北京”,@“上海”,@“南京”,@“郑州”,nil];

不可变数组的使用如下图

6.可变数组

NSArray是一个静态数组,我们不能在数组中添加和删除数组元素,所以oc语言为我们提供了NSMutableArray来动态的管理数组。NSMutableArray是NSArray的子类,所以继承了NSArray的所有方法,而且又有新增的方法。

创建和我初始化可变数组

NSMutableArray*数组对象名=[[NSMutableArray alloc]init]

addObject是在数组中添加元素

[数组对象名  addObject:添加的元素];

removeObject是从数组中删除指定的元素

[数组对象名  removeObject:要删除的元素];

removeAllObjects是删除数组中所有元素

[数组对象名  removeAllObjects];

insertObject是在指定位置为数组添加新元素

[对象数组名  insertObject:元素  atIndex:要插入的位置];

时间: 2024-10-27 08:34:38

Foundation框架的基本对象之数组对象的相关文章

黑马程序员-OC加强学习日记-Foundation框架中的字符串和数组

------- ios培训. android培训.java培训.期待与您交流! ---------- 一.Foundation框架 1.概念:框架是由许多类.方法.函数.文档按照一定的逻辑组织起来的集合,以便使研发程序变得更容易. 为所有程序开发奠定基础的框架称为Foundation框架 2.使用:要想使用Foundation框架中的功能,包含它的主文件即可 #import <Foundation/Foundation.h> 二.NSString: 不可变字符串类   一个NSString对象

js中的函数,Date对象,Math对象和数组对象

函数就是完成某个功能的一组语句,js中的函数由关键字 function + 函数名 + 一组参数定义;函数在定义后可以被重复调用,通常将常用的功能写成一个函数,利用函数可以使代码的组织结构更多清晰. 其语法结构为 function funName (arg0, arg1, … argN){        //statements    } function say_hello (name, msg){ alert(“hello”+ name + “:”+ msg); } say_hello(“d

学习笔记:javascript内置对象:数组对象

1.数组对象的创建 1.设置一个长度为0的数组 var myarr=new array(); 2.设置一个长度为n的数组 var myarr=new arr(n); 3.声明一个赋值的指定长度的数组 var myarr=new myarr(1,2,3,4,5,6); 4.为数组元素赋值 arr[i]=值 变量名=数组变量[i]; 5.删除数组元素 delete myarr[1]; 2.常用函数 方法 描述 concat() 连接两个或更多的数组,并返回结果. join() 把数组的所有元素放入一

JS(三)Date对象和数组对象

一.简介 1.日期对象:即Date对象,可以获得日期.时间.星期.时区等信息 2.数组对象:即array对象,就是讲php中的数组在js中以js的形式创建. 二.实例代码 /** * 日期:包含日期.时间.星期.时区等 */ function myFunction() { // 日期 document.write(Date() + "<br/>");// 标准时间戳 document.write(new Date().getTime() + "<br/>

Foundation框架(3)数组对象及集合对象

数组对象NSArray 数组对象的创建: + (instancetype)array     //空数组 + (instancetype)arrayWithObject:(ObjectType)anObject     //一个对象元素的数组 + (instancetype)arrayWithObjects:(ObjectType)firstObj, - //多个对象元素的数组(最后一个参数为nil) 字面值: NSArray * arr = @[@"hello", @10, @YES

mustache 获取json数据内数组对象指定元素的方法

由于最近项目再用mustache,因此发现了这个问题,mustache无法获取json数据内数组键值的指定索引的元素 遂上网查资料总结一下两种方法 1,数据为数组对像 var obj = [{name: 'foo'}, {name: 'bar'}]; var tmp = '{{#1}}{{name}}{{/1}}'; console.log(Mustache.render(tmp, obj)); //bar 这种方法个人觉得有一定局限性 -----参照:http://stackoverflow.

MVVM架构~knockoutjs系列之为Ajax传递Ko数组对象

返回目录 一些要说的 这是一个很有意思的题目,在KO里,有对象和数组对象两种,但这两种对象对外表现都是一个function,如果希望得到他的值,需要进行函数式调用,如ko_a(),它的结果为一个具体值或者数组或者函数,而ko_a则表示一个KO对象. 今天主要说一下如何在ajax方法里向后台传递对象和数组等参数,一般说来,我们为后台传递的是字符串和数字,而如果希望传递对象,则需要使用$.param这个方法,下面具体用代码说一下. 一些要做的 一般后以的代码理想是这样的 public JsonRes

JavaScript中数组对象详解

Array对象即数组对象用于在单个变量中存储多个值,JS的数组是弱类型的,所以允许数组中含有不同类型的元素,数组元素甚至可以是对象或者其他数组. 创建数组的语法 1.Array构造器 1.var list=new Array(); 2.var list=new Array(size); 3.var list=new Array(element0,element1,...elementn); 2.字面量的方式 var Array[element0,element1,...elementn]; 举例

[C] 在 C 语言编程中实现动态数组对象

对于习惯使用高级语言编程的人来说,使用 C 语言编程最头痛的问题之一就是在使用数组需要事先确定数组长度. C 语言本身不提供动态数组这种数据结构,本文将演示如何在 C 语言编程中实现一种对象来作为动态数组. /* Author: [email protected] */ 基本的 C 数组 C 语言编程中声明一个基本数组如下: int main() { // 声明一个容纳 3000 个整数的数组 int my_array[3000]; } 以上代码做了两件事: ● 在栈区开辟内存空间.准确说来是在