oc70--NSArray1

简介:
复制代码
//
//  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]);//3
    NSLog(@"last = %@", [arr4 lastObject]);//lnj
    NSLog(@"first = %@", [arr4 firstObject]);//<Person: 0x100304790>
    NSLog(@"arr[1] = %@", [arr4 objectAtIndex:1]);//<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:0]);
    NSLog(@"%@", arr7[0]);
    return 0;
}
复制代码

 


本文转自农夫山泉别墅博客园博客,原文链接:http://www.cnblogs.com/yaowen/p/7440523.html,如需转载请自行联系原作者

相关文章
|
12月前
|
传感器 监控 物联网
无线传感器网络的基本架构及其广泛应用
无线传感器网络的基本架构及其广泛应用
945 1
|
11月前
|
SQL 数据库
DBeaver执行sql文件
本文介绍了DBeaver这款支持多种数据库的通用数据库管理工具和SQL客户端,它具备查看数据库结构、执行SQL查询和脚本、浏览和导出数据等功能。
1362 1
DBeaver执行sql文件
|
消息中间件 存储 安全
RabbitMQ 常用 API(一)
RabbitMQ 常用 API(一)
326 0
|
数据可视化 搜索推荐 JavaScript
SonarQube:解析代码质量,提升开发效率
在软件开发领域,代码质量管理是至关重要的。本文将介绍静态代码分析工具 SonarQube 的概念与实践,探讨其在代码质量管理中的作用和优势。我们将深入理解 SonarQube 的工作原理,了解如何通过该工具检测、评估和改善代码质量,以提高软件开发效率和可维护性。
|
架构师 数据可视化 测试技术
如何防止架构师PM化
如果做一个合格的架构师?架构师脱实向虚有什么危害?如何防止架构工作脱实向虚?
9431 0
|
前端开发 Java 微服务
SpringBoot 企业级简化开发(一)
SpringBoot 企业级简化开发
238 1
|
索引 Python
技巧 | 5000字超全解析Python三种格式化输出方式【% / format / f-string】
技巧 | 5000字超全解析Python三种格式化输出方式【% / format / f-string】
|
JavaScript 前端开发
Form表单利用Jquery Validate验证以及ajax提交
Form表单利用Jquery Validate验证以及ajax提交
212 0
|
前端开发
从零开始,搭建一个简单的购物平台(十六)前端商城部分
从零开始,搭建一个简单的购物平台(十六)前端商城部分
290 1
从零开始,搭建一个简单的购物平台(十六)前端商城部分
|
NoSQL Java API
新来个技术总监:谁再用Redis实现订单超时自动关闭,以后就不用来了! 下
新来个技术总监:谁再用Redis实现订单超时自动关闭,以后就不用来了! 下