NSArry的常见方法
使用数组对象创建的数组功能非常强大,在Java语言或者C语言中定义的数组必须满足数组中的每一个元素必须是同样的类型。而Objective-C语言可以在Array数组中放任意类型的数据,值得注意的是只能放指向这个对象的指针,如果直接放int ,char,double 等等,是不行的.
- #import <UIKit/UIKit.h>
- #import "MyClass.h"
- int main(int argc, char *argv[])
- {
- NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
- //添加我们的测试代码
- //创建自定义类
- MyClass *myClass = [[MyClass alloc]init];
- //创建一个不可变的数组
- NSArray *array= [NSArray arrayWithObjects:@"雨松", @"MOMO",@"哇咔咔",myClass,nil];
- //得到数组的长度
- int count = [array count];
- //遍历这个数组
- for (int i = 0; i < count; i++) {
- NSLog(@"普通的遍历:i = %d 时的数组对象为: %@",i,[array objectAtIndex: i]);
- }
- int retVal = UIApplicationMain(argc, argv, nil, nil);
- [pool release];
- return retVal;
- }
- #import "MyClass.h"
- int main(int argc, char *argv[])
- {
- NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
- //添加我们的测试代码
- //创建自定义类
- MyClass *myClass = [[MyClass alloc]init];
- //创建一个不可变的数组
- NSArray *array= [NSArray arrayWithObjects:@"雨松", @"MOMO",@"哇咔咔",myClass,nil];
- //遍历这个数组
- for (NSObject *object in array) {
- NSLog(@"快速的遍历数组对象为: %@",object);
- }
- int retVal = UIApplicationMain(argc, argv, nil, nil);
- [pool release];
- return retVal;
- }
- #import <UIKit/UIKit.h>
- #import "MyClass.h"
- int main(int argc, char *argv[])
- {
- NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
- //添加我们的测试代码
- //创建自定义类
- MyClass *myClass = [[MyClass alloc]init];
- //创建一个可变的数组长度为10
- NSMutableArray *array = [NSMutableArray arrayWithCapacity:10];
- //向数组中动态的添加对象
- [array addObject:@"雨松"];
- [array addObject:@"MOMO"];
- [array addObject:@"小可爱"];
- [array addObject:@"哇咔咔"];
- [array addObject:myClass];
- for (NSObject * object in array)
- {
- NSLog(@"输出对象数组:%@", object);
- }
- int retVal = UIApplicationMain(argc, argv, nil, nil);
- [pool release];
- return retVal;
- }
[array insertObject:(NSArray *) atIndex:(NSIndexSet *)] :向可变数组中插入一个数组对象,可以任意设置它的位置脚标索引。
- #import <UIKit/UIKit.h>
- #import "MyClass.h"
- int main(int argc, char *argv[])
- {
- NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
- //添加我们的测试代码
- //创建自定义类
- MyClass *myClass = [[MyClass alloc]init];
- //创建一个可变的数组长度为10
- NSMutableArray *array = [NSMutableArray arrayWithCapacity:10];
- //向数组中动态的添加对象
- [array addObject:@"雨松"];
- [array addObject:@"MOMO"];
- [array addObject:@"小可爱"];
- [array addObject:@"哇咔咔"];
- [array addObject:myClass];
- //向数组中插入
- [array insertObject:@"插入一只小老虎" atIndex:1];
- for (NSObject * object in array)
- {
- NSLog(@"输出对象数组:%@", object);
- }
- int retVal = UIApplicationMain(argc, argv, nil, nil);
- [pool release];
- return retVal;
- }
- #import <UIKit/UIKit.h>
- #import "MyClass.h"
- int main(int argc, char *argv[])
- {
- NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
- //添加我们的测试代码
- //创建自定义类
- MyClass *myClass = [[MyClass alloc]init];
- //创建一个可变的数组长度为10
- NSMutableArray *array = [NSMutableArray arrayWithCapacity:10];
- //向数组中动态的添加对象
- [array addObject:@"雨松"];
- [array addObject:@"MOMO"];
- [array addObject:@"小可爱"];
- [array addObject:@"哇咔咔"];
- [array addObject:myClass];
- //设置一个删除范围
- NSRange range=NSMakeRange(0,5);
- //删除元素
- [array removeObject:myClass inRange:range];
- for (NSObject * object in array)
- {
- NSLog(@"输出对象数组:%@", object);
- }
- int retVal = UIApplicationMain(argc, argv, nil, nil);
- [pool release];
- return retVal;
- }
- #import <UIKit/UIKit.h>
- #import "MyClass.h"
- int main(int argc, char *argv[])
- {
- NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
- //添加我们的测试代码
- //创建自定义类
- MyClass *myClass = [[MyClass alloc]init];
- //创建一个可变的数组长度为10
- NSMutableArray *array = [NSMutableArray arrayWithCapacity:10];
- //向数组中动态的添加对象
- [array addObject:@"雨松"];
- [array addObject:@"MOMO"];
- [array addObject:@"小可爱"];
- [array addObject:@"哇咔咔"];
- [array addObject:myClass];
- //修改脚标索引为2的元素
- [array replaceObjectAtIndex: 2 withObject:@"已经修改了"];
- for (NSObject * object in array)
- {
- NSLog(@"输出对象数组:%@", object);
- }
- int retVal = UIApplicationMain(argc, argv, nil, nil);
- [pool release];
- return retVal;
- }
NSArry的常见方法的更多相关文章
- C#图片处理常见方法性能比较
C#图片处理常见方法性能比较 来自:http://www.cnblogs.com/sndnnlfhvk/archive/2012/02/27/2370643.html 在.NET编程中,由于GDI ...
- window对象中的常见方法
<body><!-- window对象中的常见方法--><script type="text/javascript"> var timeid; ...
- python socket 常见方法及 简单服务/客户端
socket 常见方法: 补充说明:what is file descriptor? 文件描述符是什么? 参考(http://stackoverflow.com/questions/8191905/w ...
- VBS操作Excel常见方法
VBS操作Excel常见方法 作者: 字体:[增加 减小] 类型:转载 时间:2009-11-13我要评论 VBS控制Excel常见方法,需要的朋友可以参考下. dim oExcel,oWb,oShe ...
- UIPickerView常见属性、常见方法(包括代理方法和数据源方法)的一些说明
一.UIPickerView 1.UIPickerView的常见属性 // 数据源(用来告诉UIPickerView有多少列多少行) @property(nonatomic,assign) id< ...
- jQuery ajax调用后台aspx后台文件的两种常见方法(不是ashx)
在asp.net webForm开发中,用Jquery ajax调用aspx页面的方法常用的有两种:下面我来简单介绍一下. [WebMethod] public static string SayHe ...
- AJAX跨域的常见方法
由于在工作中需要使用AJAX请求其他域名下的请求,但是会出现拒绝访问的情况,这是因为基于安全的考虑,AJAX只能访问本地的资源,而不能跨域访问.比如说你的网站域名是aaa.com,想要通过AJAX请求 ...
- Java中字符串的一些常见方法
1.Java中字符串的一些常见方法 /** * */ package com.you.model; /** * @author Administrator * @date 2014-02-24 */ ...
- openlayers3 基础(常见方法,类及实现)
ol3接口大全1.ol.Map类:(地图容器类) 实现: ol.Map(参数) 参数说明:1.1 target,说明地图所在的html元素. 如果没有指定,必须调用ol.Map类的setTarget( ...
随机推荐
- codeforces 385 c
Description Recently, the bear started studying data structures and faced the following problem. You ...
- PHP 输出表格单元格的数据之用表单的方式;
echo "<table border=1 class="imagetable" >"; //使用表格格式化数据echo "<for ...
- POJ2486 Apple Tree(树形DP)
题目大概是一棵树,每个结点都有若干个苹果,求从结点1出发最多走k步最多能得到多少个苹果. 考虑到结点可以重复走,容易想到这么个状态: dp[u][k][0]表示在以结点u为根的子树中走k步且必须返回u ...
- POJ2570 Fiber Network(Floyd)
d[i][j]表示从i点到j点可以全程提供光纤的公司的集合,集合用26位的二进制压缩. 那么状态转移方程就是dk[i][j]|=dk-1[i][k]&dk-1[k][j]. #include& ...
- 什么是 IntentService
service 默认也运行在 UI 线程,所以里面不能直接做耗时操作,要做耗时操作还得开启子线程来做. IntentService 就是一个 Service, 只不过里面给你默认开启了一个子线程来处理 ...
- Ada语言基础
前天是程序员节,CodeForces上举办了一场比赛,要求必须使用ADA语言提交.顿时虐爆了我这个只知道pascal,C,BASIC这3种语系的菜.今天闲着看了看这种语言,一看才知道竟然是美国军方专用 ...
- BZOJ3739 : DZY loves math VIII
显然当且仅当$\gcd(i,j)=1$时才对答案有贡献,化简得 \[\begin{eqnarray*}ans&=&\sum_{i=1}^n\sum_{j=1}^i\mu(ij)[\gc ...
- C#开发MySQL数据库程序时需要注意的几点
一:引用MySQL使用基于Parameter方式代码,总是提示:“Column '列名'cannot be null”解决 MySQL使用基于Parameter方式代码,总是提示:“Column '列 ...
- SQLServer触发器创建、删除、修改、查看示例代码
一: 触发器是一种特殊的存储过程﹐它不能被显式地调用﹐而是在往表中插入记录﹑更新记录或者删除记录时被自动地激活.所以触发器可以用来实现对表实施复杂的完整性约束. 二: SQL Server为每个触发 ...
- edtftpj让Java上传FTP文件支持断点续传
在用Java实现FTP上传文件功能时,特别是上传大文件的时候,可以需要这样的功能:程序在上传的过程中意外终止了,文件传了一大半,想从断掉了地方继续传:或者想做类似迅雷下载类似的功能,文件太大,今天传一 ...