//
// main.m
// NSArray是不可变的,一旦初始化完毕,就不能添加和删除了。类似于NSString和NSMutilString。 #import <Foundation/Foundation.h>
#import "Person.h" int main(int argc, const char * argv[]) { NSArray *arr1 = [[NSArray alloc] init]; //NSArray是不可变的,这样创建空的数组,以后又不能修改,所以这是没用的。
NSArray *arr2 = [NSArray arrayWithObject:@"lnj"];
// 数组中的nil是结束符
NSArray *arr3 = [NSArray arrayWithObjects:@"lnj", @"lmj" ,@"jjj", @"cp", nil];
NSLog(@"%@", arr3);//(lnj,lmj,jjj,cp),圆括号就是数组。 Person *p = [Person new];
NSObject *obj = [NSObject new];
//+ (instancetype)arrayWithObjects:(ObjectType)firstObj, ... NS_REQUIRES_NIL_TERMINATION; ...表示是可变参数。
NSArray *arr4 = [NSArray arrayWithObjects:p, obj, @"lnj", nil];//nil是一个结束符
NSLog(@"arr = %@", arr4);//("<Person: 0x100304790>","<NSObject: 0x1007003b0>",lnj)
NSLog(@"count = %lu", [arr4 count]);//
NSLog(@"last = %@", [arr4 lastObject]);//lnj
NSLog(@"first = %@", [arr4 firstObject]);//<Person: 0x100304790>
NSLog(@"arr[1] = %@", [arr4 objectAtIndex:]);//<NSObject: 0x1007003b0> NSArray *arr5 = [NSArray arrayWithObjects:@"lnj", @"lmj", @"jjj", @"zs", nil];
if([arr5 containsObject:@"zs"])
{
NSLog(@"arr中包含zs");
}else
{
NSLog(@"arr中不包含zs");
} // 创建数组简写
NSString *str = @"lnj";
NSArray *arr6 = [NSArray arrayWithObjects:@"lnj", @"lmj", @"jjj", nil];
NSArray *arr7 = @[@"lnj", @"lmj", @"jjj"];
// 获取数组元素的简写
NSLog(@"%@", [arr7 objectAtIndex:]);
NSLog(@"%@", arr7[]);
return ;
}

oc70--NSArray1的更多相关文章

  1. 细化如何安装LNMP + Zabbix 监控安装文档以及故障排除

    1.LNMP所需安装包: 上传如下软件包到/soft目录中 mysql- (centos6. 64位自带)也可根据版本自行挑选,前提你了解这个版本 pcre-8.36.tar.gz nginx-.ta ...

  2. iOS - Swift Array 数组

    前言 public struct Array<Element> : CollectionType, MutableCollectionType, _DestructorSafeContai ...

随机推荐

  1. autocad 注册表

    序号 版本号1 版本号2 描述 1 R15.0 1:804 2002中文版 2 R15.0 1:409 2002英文版 3 R16.0 201:804 2004中文版 4 R16.0 201:409 ...

  2. react 中样式私有

    解决的问题,两个组件之间  有相同的class名,造成其中一个无法按预期的显示. import React, { Component } from 'react' import styles from ...

  3. bzoj2693 jzptab 莫比乌斯反演|题解

    Description   Input 一个正整数T表示数据组数 接下来T行 每行两个正整数 表示N.M Output T行 每行一个整数 表示第i组数据的结果 Sample Input 1 4 5 ...

  4. css3属性之-webkit-margin-before

    当没有对浏览器进行css边距初始化时,在web-kit浏览器上会出现下面的浏览器默认边距设置: ul, menu, dir { display: block; list-style-type: dis ...

  5. 类模板成员函数默认值问题:an out-of-line definition of a member of a class template cannot have default arguments

    template <typename T> class A { ); }; template<typename T> ) { /* */ } 对于类似上文代码,VS编译器会报 ...

  6. linux more-显示文件内容,每次显示一屏

    博主推荐:获取更多 linux文件内容查看命令 收藏:linux命令大全 more命令是一个基于vi编辑器文本过滤器,它以全屏幕的方式按页显示文本文件的内容,支持vi中的关键字定位操作.more名单中 ...

  7. 58.海量bucket优化机制:从深度优先到广度优先

    当buckets数量特别多的时候,深度优先和广度优先的原理,图解 假如我们有如下数据数据:每个演员的每个电影的评论. 现在我们的需求是找到前10名的演员所演的电影的评论.这是一个两层聚合题.     ...

  8. 浅谈对java-GC的理解

    前段时间,一个线上项目忽然很卡,通过监控,发现内存很高,果不其然在几个小时后,OOM.虽说有人很快处理好了.但我还是想站在我的角度,对这件事发表一下自己的观点. 内存溢出,多发生在项目上线后,而且在系 ...

  9. 百练4103:踩方格(DFS)

    描述 有一个方格矩阵,矩阵边界在无穷远处.我们做如下假设:a.    每走一步时,只能从当前方格移动一格,走到某个相邻的方格上:b.    走过的格子立即塌陷无法再走第二次:c.    只能向北.东. ...

  10. 关于markdown(typora)的操作指南,以及导出为word格式文件插件(pandoc-2.6-windows-x86_64)的下载

    Markdown简介 插件链接文章结尾处 目录 Markdown简介1. Markdown是什么?2. 谁创造了它?3. 为什么要使用它?4. 怎么使用?4.1 标题4.2 段落4.3 区块引用4.4 ...