foundation 数组NSArray学习
最近最近在忙于公司的项目研发学习iOS的进度比较慢了,但是还是坚持自己学习了一下foundation的基本学习语法拿来和大家一起分享学习。每天都到深夜在休息明天还要上班身体真心累,但是我始终相信好事多磨。这里面介绍了数组的可变,不可变查找数组中的一个元素,最后一个元素,和你制定的元素,还有遍历数组。
// main.m
// Arrary
//
// Created by 张义航 on 14/11/21.
// Copyright (c) 2014年 zyh. All rights reserved.
//
#import <Foundation/Foundation.h>
#import "Student.h"
//创建一个数组
void arrayCreate(){
NSArray *array = [NSArray array];
array = [NSArray arrayWithObject:@"123"];
array = [NSArray arrayWithObjects:@"a",@"b",@"c", nil];
unsigned int count= [array count];
NSLog(@"%zi",count);
}
#pragma maker 数组的简单实用
void arrayUse(){
NSObject *obj = [[NSObject alloc] init];
NSArray *array1 = [NSArray arrayWithObjects:@"a",@"b",@"c",obj, nil];
if ([array1 containsObject:@"a"]) {
NSLog(@"ok");
}
NSString *last = [array1 lastObject];
NSLog(@"%@",last);
NSString *str = [array1 objectAtIndex:1];
NSLog(@"%@",str);
unsigned int index = [array1 indexOfObject:@"b"];
NSLog(@"%zi",index);
}
void arrayMemory(){
Student *stu1 = [[Student alloc] init];
Student *stu2= [[Student alloc] init];
Student *stu3 = [[Student alloc] init];
NSArray *array = [[NSArray alloc] initWithObjects:stu1,stu2,stu3, nil];
NSLog(@"%zi",array.count);
}
void arrayMessage(){
Student *stu1 = [Student student];
Student *stu2 = [Student student];
Student *stu3 = [Student student];
NSArray *array = [NSArray arrayWithObjects:stu1,stu2,stu3, nil];
[array makeObjectsPerformSelector:@selector(test)];
}
void arrayFor(){
NSArray *array = [NSArray arrayWithObjects:@"1",@"2",@"2", nil];
//for循环遍历
// int count =array.count;
// for (int i = 0; i<count; i++) {
// id obj = [array objectAtIndex:i];
// NSLog(@"%i---%@",i,obj);
// }
//快速遍历
// int i=0;
// for (id obj in array) {
// NSLog(@"%i---%@",i,obj);
// i++;
// }
//#pragma - maker block学习
// [array enumerateObjectsUsingBlock:
// ^(id obj, NSUInteger idx, BOOL *stop) {
// NSLog(@"%i---%@",idx,obj);
// }];
//
//迭代器的使用
//正排序
NSEnumerator *enu = [array objectEnumerator];
//反排序
NSEnumerator *enu1 = [array reverseObjectEnumerator];
id obj = nil;
while (obj = [enu1 nextObject]) {
NSLog(@"%@",obj);
}
}
int main(int argc, const char * argv[]) {
@autoreleasepool {
arrayCreate();
arrayUse();
arrayMessage();
arrayFor();
}
return 0;
}
转载于:https://www.cnblogs.com/mylance/p/4114452.html
foundation 数组NSArray学习相关推荐
- Object-C,数组NSArray
晚上回来,写了2个iOS应用程序. 就是在界面中,展示标签.一种是手动构造界面,然后绑定事件.另外一种是,使用自带的界面作为容器,但是手动向里面放其它界面元素. 书中的观点是,使用图形化界面,构造界面 ...
- NSArray 学习
// // NSSArrayStu.m // OC基础学习 // // Created by 麦子 on 15/4/2. // Copyright (c) 2015年 麦子. All rights r ...
- 微信小程序js数组初始化_微信小程序学习Course 3-2 JS数组对象学习
微信小程序学习Course 3-2 JS数组对象学习 本节主要介绍JS中的数组. 3-2.1 数组的声明 数组声明的方式多种,如下例.一般我们可以先创建一个空数组,然后再填充. var names = ...
- JavaScript数组方法学习(一):数组元素的增加和删除
JavaScript数组方法学习(一):数组元素的增加和删除 文章目录 JavaScript数组方法学习(一):数组元素的增加和删除 前言 一.往数组里新增元素 1.在数组的最前面添加:unshift ...
- Foundation框架 - NSArray类 、NSMutableArray类
NSArray类 .NSMutableArray类 数组创建 NSLog(@"*************************** 数组创建 *********************** ...
- 后缀数组的学习(三):SA数组实现代码分析
在前面的博文里面分析了SA数组和rank数组的实现过程,实际上也就是倍增算法的思想分析!虽然思想上面懂了,但是代码实现还是很难理解的!因为代码里面做了太多的优化. 整个代码的实现可以分成两部分:1.对 ...
- c语言不定长数组_学习C语言这三块“硬骨头”不搞定学了也是白学
C语: C语言在嵌入式学习中是必备的知识,审核大部分操作都要围绕C语言进行,而其中有三块"难啃的硬骨头"几乎是公认级别的. 01指针 C语言 指针公认最难理解的概念,也是让很多初学 ...
- 1010 Lehmer Code (35 分)(思路+详解+树状数组的学习+逆序对+map+vector) 超级详细 Come baby!!!
一:题目 According to Wikipedia: "In mathematics and in particular in combinatorics, the Lehmer cod ...
- 后缀数组的学习(一):学习的预备知识
去年的时候弄了一阵子的后缀数组,当时一直都没有弄懂!今年再看后缀数组,似懂非懂!其实还是没懂!但比去年的完全不懂,还是有进步的! 下来把思路理了理,要看明白后缀数组,是需要一些知识储备的! 1.基数排 ...
最新文章
- 1.2W 字的 SQL 语法速成手册
- MongoDb 安全配置
- Caffe代码导读(0):路线图
- LibSVM学习(六)——easy.py和grid.py的使用(转)
- android activity 回调函数,Android Activity的生命周期
- 15 FFT及其框图实现
- 传奇服务端各文件用途说明
- SQL Server 和 Oracle 的常用函数对比
- 中国大学MOOC-数据结构基础习题集、08-1、Talent and Virtue
- 代码修改以及公式推导
- 141.环形链表(力扣leetcode)博主可答疑该问题
- 详细讲解深层神经网络DNN
- iOS蓝牙开发(三)实现外设功能
- 机器人视觉手眼标定学习笔记
- Linux 命令之 gzip -- 压缩和解压文件
- STM32f4日记9之LD3320语音识别(您的私人语音助手MICRO)
- html页面去边框线,html中怎么去掉表格边框线的?
- 交互电子白板有哪些特点?电子白板功能介绍
- TC358779XBG,HDMI转MIPI DSI,支持全高清,东芝转接芯片
- nodejs+libreoffice 将word转成pdf
热门文章
- linux 黑酷命令行背景图片
- c语言从键盘输入数据数组,//从键盘上输入若干整数,并将其存入数组中,并统计输入数据的个...
- unity太空射击源码_引擎入门 | 创建双杆射击游戏(入门 2)
- Ubuntu 18.04 Server必须使用netplan命令配置IP地址
- Services in Kubernetes
- 基于UCenter关联第三方网站与Discuz用户
- C#音视频处理开源项目收录
- php mysql delete_php教程之PHP MySQL Delete
- MapReduce on Yarn 的流程和架构图
- 放置奇兵公会副本攻略_放置奇兵维萨配什么魔兽,放置奇兵装备怎么获得-放置奇兵攻略...