// 数组存放的内容必须是NSObject对象,数组中存放的内容是有序的

// 数组打印输出在输出台是用()包括起来的

// NSArray 不可变数组

// 1.创建对象

// 初始化方法

NSArray *array1 = [[NSArray alloc] initWithObjects:@"盖聂", @"卫庄", @"天明", @"少羽", nil];

NSArray *array2 = [[NSArray alloc] initWithArray:array1];

NSLog(@"%@", array2);

// 类方法

NSArray *array3 = [NSArray arrayWithObjects:@"盖聂", @"卫庄", @"天明", @"少羽", nil];

NSLog(@"%@", array3);

// 字面量方法

NSArray *array4 = @[@"yinhao", @"man", @27, @99];

NSLog(@"%@", array4);

// 2.数组查找

// 通过下标访问对象

NSLog(@"%@", array1[2]);

NSString *str1 = [array1 objectAtIndex:2];

NSLog(@"%@", str1);

// 通过对象访问下标

NSString *str2 = @"卫庄";

NSUInteger index = [array1 indexOfObject:str2];

NSLog(@"%lu", index);

// 3.判断数组中是否包含某个指定的对象

BOOL isHasGn = [array1 containsObject:@"盖聂"];

NSLog(@"%d", isHasGn);

// 4.NSString和NSArray之间的转换

NSString *string1 = @"盖聂&卫庄&天明";

// 将一个字符串按照指定字符截取,每段内容存放在数组中

NSArray *strArray = [string1 componentsSeparatedByString:@"&"];

NSLog(@"%@", strArray);

NSLog(@"%@", strArray[0]);

NSLog(@"%@", strArray[1]);

NSLog(@"%@", strArray[2]);

// 将数组中的元素按照指定的字符串拼接成新的字符串

NSArray *array5 = @[@"尹浩", @"尹笑", @"尹双浩"];

NSString *string2 = [array5 componentsJoinedByString:@""]; // @""加什么都可以,不加也可以

NSLog(@"%@", string2);

// NSMutableArray 可变数组

// 1.创建对象(初始化方法,类方法,字面量方法均可)

NSMutableArray *mArray = [NSMutableArray arrayWithObjects:@"尹浩", @"尹笑", @"尹双浩", @"尹冬冬", nil];

NSLog(@"%@", mArray);

// 2.添加元素,插入元素

// 添加(加到最后面)

[mArray addObject:@"yinxiao"];

NSLog(@"%@", mArray);

// 插入到指定位置

[mArray insertObject:@"yinhao" atIndex:2];

NSLog(@"%@", mArray);

// 3.删除元素

// 删除指定的元素

//[mArray removeObject:@"yinhao"];

// 删除所有

//[mArray removeAllObjects];

// 删除最后一个

//[mArray removeLastObject];

// 指定下标删除

//[mArray removeObjectAtIndex:2];

// 4.替换指定位置的对象

[mArray replaceObjectAtIndex:3 withObject:@"yinshuanghao"];

NSLog(@"%@", mArray);

// 5.交换两个指定位置的对象

[mArray exchangeObjectAtIndex:2 withObjectAtIndex:4];

NSLog(@"%@", mArray);

OC数组常见操作的更多相关文章

  1. java学习第05天(数组常见操作、数组中的数组)

    (4)数组常见操作 a.遍历取值 class ArrayDemo3 { public static void main(String[] args) { //System.out.println(&q ...

  2. Java 语言基础之数组常见操作

    对数组操作最基本的动作: 存和取 核心思想: 就是对角标的操作 数组常见操作: 1, 遍历 2, 获取最大值和最小值 3, 排序 4, 查找 5, 折半查找 // 1. 遍历 int[] arr = ...

  3. JavaScript数组常见操作

    JavaScript数组常见操作 Tip: 右键在新标签中打开查看清晰大图 下面介绍JavaScript中的数组对象遍历.读写.排序等操作以及与数组相关的字符串处理操作 创建数组 一般使用数组字面量[ ...

  4. JS 数组常见操作汇总,数组去重、降维、排序、多数组合并实现思路整理

    壹 ❀ 引 JavaScript开发中数组加工极为常见,其次在面试中被问及的概率也特别高,一直想整理一篇关于数组常见操作的文章,本文也算了却心愿了. 说在前面,文中的实现并非最佳,实现虽然有很多种,但 ...

  5. Java初学者笔记三:关于字符串和自实现数组常见操作以及异常处理

    一.字符串常见的操作 1.结合我在python中对于字符串常见处理总结出下面三个应该能算是字符串造作的TOP 3 //字符串查找子串,存在返回index,不存在返回-1 等于python的find: ...

  6. java 数组常见操作

    1.遍历  依次访问数组中的每个元素 public class ArrayDemo04 { public static void main(String[] args) { int[] arr = { ...

  7. [java学习笔记]java语言基础概述之数组的定义&常见操作(遍历、排序、查找)&二维数组

    1.数组基础 1.什么是数组:           同一类型数据的集合,就是一个容器. 2.数组的好处:           可以自动为数组中的元素从零开始编号,方便操作这些数据. 3.格式:  (一 ...

  8. C#路径/文件/目录/I/O常见操作汇总

    文件操作是程序中非常基础和重要的内容,而路径.文件.目录以及I/O都是在进行文件操作时的常见主题,这里想把这些常见的问题作个总结,对于每个问题,尽量提供一些解决方案,即使没有你想要的答案,也希望能提供 ...

  9. X-Cart 学习笔记(四)常见操作

    目录 X-Cart 学习笔记(一)了解和安装X-Cart X-Cart 学习笔记(二)X-Cart框架1 X-Cart 学习笔记(三)X-Cart框架2 X-Cart 学习笔记(四)常见操作 五.常见 ...

随机推荐

  1. UnWind Segue

    iOS 6 和 Xcode 4.5 中添加了一个新特性叫做“Unwind Segue”. 使用Unwind Segue,可以方便的在Navigation Controller的Controllers之 ...

  2. 析构函数和Dispose的使用区别

    老生常谈的问题了,MSDN也有非常详细的说明但看起来不是很系统.也曾经做过分析,但没有总结下来又忘了,这次整理一下MSDN和网上搜集的一些资料,以备不时只需. 下面是MSDN对这两个函数的建议使用方法 ...

  3. [Python] Basic operations in Pycharm

    From: http://learnpythonthehardway.org/book Comment with line comment: Ctrl + slash Run: Shift + F10 ...

  4. Linux - 常用Shell快捷键

    Common Shortcut Key 用途 快捷键 说明 光标移动 Ctrl + a 把光标移到行首 Ctrl + e 把光标移到行尾 Ctrl + x 在 EOL 和当前位置移动光标 输入编辑 C ...

  5. Dictionary序列化和反序列化

    public class SerializeHelper { public static string XmlSerialize(List<CustomSearchEntity> obj) ...

  6. [团队项目]SCRUM项目4.0

    1.准备看板. 形式参考图4. 2.任务认领,并把认领人标注在看板上的任务标签上. 先由个人主动领任务,PM根据具体情况进行任务的平衡. 然后每个人都着手实现自己的任务. 3.为了团队合作愉快进展顺利 ...

  7. UnityShader快速上手指南(二)

    简介 前一篇介绍了如果编写最基本的shader,接下来本文将会简单的深入一下,我们先来看下效果吧 呃,gif效果不好,实际效果是很平滑的动态过渡 实现思路 1.首先我们要实现一个彩色方块 2.让色彩动 ...

  8. ajax请求跨域问题

    ajax跨域,这个是面试的时候常被问到,也是在做项目的时候会遇到的问题,在之前的项目中就有遇到过,这里根据经验写了三种分享下 1.使用中间层过渡的方式 简单来说就是"后台代理",把 ...

  9. 较友好的Web文件下载用户体验实例

    1.实际需求整理与分析 该问题起源于为公司做的一个B/S架构的游戏静态数据管理工具,其中有一个需求是点击页面上的一些按钮要下载文件,可能根据按钮类型的不同需要转换下载.json..zip..xlsx等 ...

  10. FL2440驱动添加(5)ADC驱动学习笔记

    由图可知,模拟ADC分为两部分功能,一部分是触屏功能,另一部分就是普通ADC功能.分别可以产生INT_TC和INT_ADC 两个中断.该ADC模块总共有8个通道可以进行模拟信号的输入,分别是AIN0. ...