oc-29-可变数组
/**
数组长度不固定,可以随便往里面添加或者删除元素。
1.创建数组
NSMutableArray *arrayM = [NSMutableArray array]
2.给数组添加元素(只能是OC对象)
- (void)addObject:(id)anObject;
3.如何删除数组元素 */ #import <Foundation/Foundation.h> int main(int argc, const char * argv[]) {
@autoreleasepool {
// 1.如何创建1个可变数组
NSMutableArray *arrayM = [NSMutableArray array]; // 2.给数组里面添加元素
[arrayM addObject:@"ssssx"];
[arrayM addObject:@"赵信"];
[arrayM addObject:@"嘉文"];
[arrayM addObject:@"ssssx"];
[arrayM addObject:@"赵信"];
[arrayM addObject:@"嘉文"];
[arrayM addObject:@"ssssx"];
[arrayM addObject:@"赵信"];
[arrayM addObject:@"嘉文"]; // 3.删除数组元素
// 删除指定名字的数组元素
[arrayM removeObject:@"ssssx"];
// 删除指定位置的数组元素
[arrayM removeObjectAtIndex:];
// 删除所有元素
[arrayM removeAllObjects]; NSLog(@"%@",arrayM); }
return ;
} /*
@synthesize name = _b; //相当于操作_b的值
-(void)setName:(NSString *) name
{
_b = name;
} -(NSString *)name
{
return _b;
}
注意:在4.4之前,@property和@synthesize成对出现 2)@property 在Xcode4.4之后(@property增强)
增强使用:
@property int score; 1).h文件中 帮我们声明 setScore(setter) 和score(getter)方法
2).m 中帮我们生成_score的私有变量(在外部不能访问,不能被子类继承)
3).m 中帮我们实现 get和set方法 3、动态类型&id类型 动态类型:程序在运行的时候,才能确定对象属于什么类型
静态类型:程序编译的时候,就确定了对象的类型 动态类型的体现: 多态,父类指针可以指向子类对象
NSObject 是所有类的基类
NSObject *obj = [Dog new];
父类调用子类特有的方法
[(Person *)obj eat];
//id类型,id类型又被称为 万能指针。
id obj; //运行时检查
obj = [Car new]; //实例变量 _speed
[obj stop];
//id类型调用子类的方法的时候不要强制类型转换,NSObject *类型调用子类方法的时候要强制类型转换。 6、构造方法的使用
[Person new];
-> [Person alloc];//空间申请完后,不能立即使用,有可能会导致意想不到的错误 -> [[Person alloc] init];
[Person new]; 会把我们的成员变量的值,默认的设置为0
oc-29-可变数组的更多相关文章
- OC基础 可变数组与不可变数组的使用
OC基础 可变数组与不可变数组的使用 1.不可变数组 1.1不可变数组的创建 //实例方法 NSArray *array = [[NSArray alloc] initWithObjects:&quo ...
- Objective - C NSArray不可变数组和NSMutableArray可变数组
OC中存储数据最常用 的两个容器就是数组和字典,而作为最常用的,应该了解这所有的特点,及用法. OC中的数组是一个容量,有序的管理了一系列元素,并且存放在数组里的元素,必须是对象类型. 不可变数组,见 ...
- Oc中的数组
========================== 数组 ========================== 一.认识数组 oc中可以把NSObject对象的子类放到数组这个集合中,但是int.f ...
- NSArray与NSMutableArray 数组与可变数组
1.NSArray 是一个父类,NSMUtableArray是其子类,他们构成了OC的数组.2.NSArray的创建NSArray * array = [[NSArray alloc]initWith ...
- OC基础 可变字典与不可变字典的使用
OC基础 可变字典与不可变字典的使用 1.不可变字典 1.1创建不可变字典 //创建字典 //注意: //1,元素个数是偶数 //2,每两个元素是一个键值对 //3,值在前,键在后 NSDiction ...
- iOS开发-OC语言 (四)数组
知识点 1.NSArray 2.NSMutableArray 1.数组的基本用法: 2.数组的遍历 3.数组排序 =========== NSArray 不可变数组 ============= ...
- NSArray与NSMutableArray 数组与可变数组的创建和遍历 复习
1.NSArray 是一个父类,NSMUtableArray是其子类,他们构成了OC的数组. 2.NSArray的创建 NSArray * array = [[NSArray alloc]initWi ...
- vector(可变数组) 用于UDP通信
头文件: #include<vector.h> 然后,声明并初始化vctor数组. vector<char> str(len); 其中len可以是变量或者常量.(其实用常量就 ...
- 可变数组NSMutableArray
//创建一个空的可变数组 NSMutableArray *array = [NSMutableArray array]; //向数组里面添加对象 [array addObject:@"< ...
- objective-c可变数组
1 #pragma mark ---------------可变数组----------------- 2 // 可以在数组里面进行增删改的操作 3 // 4 // ...
随机推荐
- PHPCMS V9实现硬件地址MAC绑定访问技术实现
目的:会员登录需要 用户名.密码.身份识别码(新增字段) 效果: 解决方法: 目前数据库中macaddress字段已经添加,修改了phpcms\modules\member\index.php 63 ...
- Python中list的实现
原文链接这篇文章介绍了Python中list是如何实现的.在Python中list特别有用.让我们来看下list的内部是如何实现的.来看下面简单的程序,在list中添加一些整数并将他们打印出来. &g ...
- python 抽象类、抽象方法的实现
由于python 没有抽象类.接口的概念,所以要实现这种功能得abc.py 这个类库,具体方式如下 from abc import ABCMeta, abstractmethod #抽象类 class ...
- Java Web高性能开发(三)
今日要闻: Clarifai:可识别视频中物体 最近几年,得益于深度学习技术的发展,谷歌和Facebook等企业的研究人员在图形识别软件领域取得了重大突破.现在,一家名为Clarifai的创业公司则提 ...
- C++11用于计算函数对象返回类型的统一方法
[C++11用于计算函数对象返回类型的统一方法] 模板 std::result_of 被TR1 引进且被 C++11 所采纳,可允许我们决定和使用一个仿函数其回返值的类别.底下,CalculusVer ...
- Lotus 迁移到Exchange 2010 之准备使用Transport 同步Lotus 相关信息!
这里我们先来分析下Lotus迁移到Exchange2010 的一些原理,由于存在一定周期的共存时间,因此在共存期间必须来实现相应的同步计划,整个同步计划包含了如下的同步计划:
- hdoj 5328 Problems killer
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5328 #include<stdio.h> #include<algorithm> ...
- 动态链接--so的搜索过程
可执行文件所依赖的so路径保存在.dynamic 里面,由DT_NEED类型表示.如下: 如果DT_NEED里面保存的是绝对路径,那ld就在绝对路径下查找so. 如果DT_NEED里面保存的是相对路径 ...
- Slave延迟很大的优化方法总结(MySQL优化)
[http://www.cstor.cn/textdetail_9146.html] 一般而言,slave相对master延迟较大,其根本原因就是slave上的复制线程没办法真正做到并发.简单说,在m ...
- Centos下忘记mysql的root密码的解决方法
Centos下忘记mysql的root密码的解决方法 一:(停掉正在运行的mysql) [root@NetDakVPS ~]# service mysql stop 二:使用 “--skip-gran ...