oc74--NSMutableArray
//
// main.m
// NSMutableArray ,可变数组 #import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { // 创建一个空的数组
NSMutableArray *arrM = [NSMutableArray array];
NSLog(@"%@", arrM);
// 如何添加
[arrM addObject:@"lnj"];
// 将指定数组中的元素都取出来, 放到arrM中
// 并不是将整个数组作为一个元素添加到arrM中
[arrM addObjectsFromArray:@[@"lmj", @"jjj"]];
// 注意: 以下是将整个数组作为一个元素添加
[arrM addObject:@[@"lmj1", @"jjj1"]];
NSLog(@"%@", arrM);//(lnj,lmj,jjj,(lmj1,jjj1))
// 如何插入
[arrM insertObject:@"xcq" atIndex:];
NSLog(@"%@", arrM);//(lnj,xcq,lmj,jjj,(lmj1,jjj1)) NSRange range = NSMakeRange(, );
NSIndexSet *set = [NSIndexSet indexSetWithIndexesInRange:range];
// 插入一组数据, 指定数组需要插入的位置, 和插入多少个
[arrM insertObjects:@[@"A", @"B"] atIndexes:set];
NSLog(@"%@", arrM);//(lnj,xcq,A,B,lmj,jjj,(lmj1,jjj1)) // 如何删除
[arrM removeObjectAtIndex:];//(xcq,A,B,lmj,jjj,(lmj1,jjj1))
NSLog(@"%@", arrM); [arrM removeLastObject];
NSLog(@"%@", arrM);//(xcq,A,B,lmj,jjj) [arrM removeObject:@"A"];//(xcq,B,lmj,jjj)
NSLog(@"%@", arrM); // 如何替换
[arrM replaceObjectAtIndex: withObject:@"M"];
NSLog(@"%@", arrM);//(xcq,M,lmj,jjj) // 如何获取
NSLog(@"%@", [arrM objectAtIndex:]);//xcq
NSLog(@"%@", arrM[]);//xcq // 替换
arrM[] = @"ZS";
NSLog(@"%@", arrM);//(ZS,M,lmj,jjj) // 注意: 不能通过@[]来创建一个可变数组, 因为@[]创建出来的是一个不可变的数组
// 如果把一个不可变数组当做一个可变数组来使用, 会引发一个运行时的错误
NSMutableArray *arrM1 = @[@"lnj", @"lmj"];//(lnj,lmj)
[arrM1 addObject:@"JJJ"];//报错 return ;
}
oc74--NSMutableArray的更多相关文章
- 可变数组NSMutableArray
//创建一个空的可变数组 NSMutableArray *array = [NSMutableArray array]; //向数组里面添加对象 [array addObject:@"< ...
- Objective - C NSArray不可变数组和NSMutableArray可变数组
OC中存储数据最常用 的两个容器就是数组和字典,而作为最常用的,应该了解这所有的特点,及用法. OC中的数组是一个容量,有序的管理了一系列元素,并且存放在数组里的元素,必须是对象类型. 不可变数组,见 ...
- iOS阶段学习第15天笔记(NSArray与NSMutableArray 数组)
iOS学习(OC语言)知识点整理 一.OC中的数组 1)数组:也是一个对象,数组中存放的是对象的地址,可以存放任意类型对象的地址,只能是对象不能是具体的数值,数组是有序的, 可以存放重复的元 ...
- objective-c系列-NSMutableArray
******************************************** // 可变数组构造方法 // 下边两句的定义都是不可变的 // NSMutableArray *mar ...
- NSArray与NSMutableArray 数组与可变数组
1.NSArray 是一个父类,NSMUtableArray是其子类,他们构成了OC的数组.2.NSArray的创建NSArray * array = [[NSArray alloc]initWith ...
- Foundation框架—— 数组 (NSArray NSMutableArray )
基础知识回顾 1.在给可变数组添加元素时,要保证该数组已被初始化 2.在遍历可变数组时,不能对其进行增删改 3.NSMutableArray继承自NSArray,几乎拥有NSArray的一切方法. 4 ...
- OC第三节——NSArray和NSMutableArray
1.OC数组和c数组的区别 C语言的数组: 相同类型变量的有序结合. 类型:可以是简答数据类型.构造数据类型 int a[10 ...
- IOS - Objective-C NSArray和NSMutableArray的详解 使用
原文地址:http://blog.csdn.net/totogo2010/article/details/7729377 Objective-C的数组比C++,Java的数组强大在于,NSArray保 ...
- Objective-C( Foundation框架 一 数组(NSMutableArray))
NSMutableArray:可变数组 NSMutableArray是NSArray的子类 创建NSMutableArray数组对象 添加数组元素: // 创建数组 NSMutableArray *a ...
- IOS数组NSArray与NSMutableArray知识点
此文是对数组NSArray与NSMutableArray知识点的总结,主要是一些常见的操作,别外一些操作见其相应的文档,下面的代码部分还运用的第三方插件BlocksKit相结合: a:Foundati ...
随机推荐
- (转)Hibernate框架基础——映射普通属性
http://blog.csdn.net/yerenyuan_pku/article/details/52739871 持久化对象与OID 对持久化对象的要求 提供一个无参的构造器.使Hibernat ...
- Window提高_3.1练习_双进程守护
双进程守护 当打开一个进程A的时候,此进程检测是否存在进程B,如果不存在就创建进程B. 进程B的作用是检测进程A是否被关闭,如果被关闭了,就再创建一个进程A. 双进程守护A.exe代码如下: #inc ...
- R语言学习 - 线图一步法
首先把测试数据存储到文件中方便调用.数据矩阵存储在line_data.xls和line_data_melt.xls文件中 (直接拷贝到文件中也可以,这里这么操作只是为了随文章提供个测试文件,方便使用. ...
- HDU多校Round 5
Solved:3 rank:71 E. Everything Has Changed #include <bits/stdc++.h> using namespace std; const ...
- Java笔记——String、StringBuffer和StringBuilder类
String类是不可变类,即一旦一个String对象被创建以后,包含在这个对象中的字符串序列是不可改变的,直至这个对象被销毁. StringBuffer对象则代表一个字符序列可变的字符串,当一个S ...
- 浅析Oracle中的不等于号
前几天碰到一个关于Oracle不等于的问题,最后搜索了一下,发现下面资料,拿来跟大家分享一下,需要的朋友可以参考下 关于Oracle中的不等于号: 在Oracle中, <> != ...
- C++ string使用
在c语言里,我们使用一个字符串时,是通过字符数组或者字符指针的方式来进行使用,在C++里,标准模板库已经给我们提供了string类型(string是以类的方式提供给我们使用). 定义和初始化strin ...
- 洛谷——P2094 运输
P2094 运输 题目描述 现在已知N件商品,和搬运它们其中每一件的费用.现在搬家公司老板Mr.sb决定让我们每次任意选取2件商品.然后这2件商品只算一件商品的费用.但是这个商品的搬运费用是将选出的2 ...
- Linux—Ubuntu14.0.5配置JAVA环境
1. 前往ORACLE官网下载最新版本的Java JDK:http://www.oracle.com/technetwork/java/javase/downloads/index.html,默认下载 ...
- css实现圆角效果
源码: <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> & ...