Java培训、Android培训、iOS培训、.Net培训、期待与您交流!

(以下内容是对黑马苹果入学视频的个人知识点总结)

(一)NSArray

1>NSArray :不可变数组

①创建方法

 NSArray *array = @[@"jack", @"rose"];

注意点:

OC数组不能存放nil值

OC数组只能存放OC对象、不能存放非OC对象类型,比如int、struct、enum等

这个array永远是空数组

 NSArray *array = [NSArray array];

结束的标记是nil

 NSArray *array3 = [NSArray arrayWithObjects:@"jack", @"rose", nil];

元素访问

 NSArray中元素的访问

2>NSMutableArray : 可变数组

①创建方法

 NSMutableArray *array = [NSMutableArray arrayWithObjects:@"rose", @"jim", nil];

②添加元素

 [array addObject:[[Person alloc] init]];
[array addObject:@"jack"];

③删除元素和指定对象

 [array removeAllObjects];
[array removeObject:@"jack"];

(二)NSSet

NSSet和NSArray的对比

1> 共同点

①都是集合,都能存放多个OC对象

②只能存放OC对象,不能存放非OC对象类型(基本数据类型:int、char、float等,结构体,枚举)

③ 本身都不可变,都有一个可变的子类

2> 不同点

①NSArray有顺序,NSSet没有顺序

3>基本使用

    NSSet *s = [NSSet set];

    NSSet *s2 = [NSSet setWithObjects:@"jack",@"rose", @"jack2",@"jack3",nil];

(三)NSDictionary

NSDictionary\NSMutableDictionary

①无序

②快速创建(不可变):@{key1 : value1,  key2 : value2}

 NSDictionary *dict = @{
@"address" : @"北京",
@"name" : @"jack",
@"name2" : @"jack",
@"name3" : @"jack",
@"qq" : @""};

③快速访问元素:字典名[key]

key ----> value

字典不允许有相同的key,但允许有相同的value(Object)

对与可变的NSMutableDictionary

添加键值对

 [dict setObject:@"jack" forKey:@"name"];

移除键值对

 [dict removeObjectForKey:<#(id)#>];

黑马程序员——OC语言Foundation框架 (2) NSArray NSSet NSDictionary\NSMutableDictionary的更多相关文章

  1. 黑马程序员——OC语言Foundation框架 结构体

    Java培训.Android培训.iOS培训..Net培训.期待与您交流! (以下内容是对黑马苹果入学视频的个人知识点总结) (一)结构体 NSRange(location length) NSPoi ...

  2. 黑马程序员——OC语言Foundation框架 NSArray NSSet NSDictionary\NSMutableDictionary

    Java培训.Android培训.iOS培训..Net培训.期待与您交流! (以下内容是对黑马苹果入学视频的个人知识点总结) (一) NSNumber 将各种基本数据类型包装成NSNumber对象 @ ...

  3. 黑马程序员——OC语言基础语法 面向对象的思想

    Java培训.Android培训.iOS培训..Net培训.期待与您交流! (以下内容是对黑马苹果入学视频的个人知识点总结)(一)基础语法 1)关键字 @interface.@implementati ...

  4. 黑马程序员——OC语言 类和对象

    Java培训.Android培训.iOS培训..Net培训.期待与您交流! (以下内容是对黑马苹果入学视频的个人知识点总结) (一)类 1)类的声明 代码编写 ①定义一个Car类,拥有2个属性:轮子数 ...

  5. 黑马程序员——OC语言 三大特性之继承

    Java培训.Android培训.iOS培训..Net培训.期待与您交流! (以下内容是对黑马苹果入学视频的个人知识点总结) 三大特性之继承 (一)继承的基本用法 先建立个Animal再用Dog继承前 ...

  6. 黑马程序员——OC语言 内存管理

    Java培训.Android培训.iOS培训..Net培训.期待与您交流! (以下内容是对黑马苹果入学视频的个人知识点总结) (一)计数器 每个对象内部都保存了一个与之相关联的整数,称为引用计数器,当 ...

  7. 黑马程序员——OC语言 核心语法 (3)

    Java培训.Android培训.iOS培训..Net培训.期待与您交流! (以下内容是对黑马苹果入学视频的个人知识点总结) (一)分类Category 1) 基本用途 如何在不改变原来类模型的前提下 ...

  8. 黑马程序员——OC语言 核心语法(2)

    Java培训.Android培训.iOS培训..Net培训.期待与您交流! (以下内容是对黑马苹果入学视频的个人知识点总结) (一)id 1)简介:万能指针,能指向任何OC对象,相当于NSObject ...

  9. 黑马程序员——OC语言 三大特性之多态

    Java培训.Android培训.iOS培训..Net培训.期待与您交流! (以下内容是对黑马苹果入学视频的个人知识点总结) 三大特性之一的多态 (一)多态的基本概念 OC对象具有多态性体现在 Per ...

随机推荐

  1. angularjs与require的集成摘抄

    基于requireJS和angularJS的前端技术架构 :http://blog.163.com/liuyong_xiaxia/blog/static/17435525520156341446981 ...

  2. :nth-child

    匹配其父元素下的第N个子或奇偶元素 :eq(index) 匹配选择器指定序列的元素,而这个将为每一个父元素匹配子元素. :nth-child从1开始的,而:eq()是从0算起的!可以使用:<br ...

  3. [attribute=value] 匹配给定的属性是某个特定值的元素

    描述: 查找所有 name 属性是 newsletter 的 input 元素 HTML 代码: <input type="checkbox" name="news ...

  4. 添加一个DataSet

    /// <summary> /// 返回状态数据 /// </summary> /// <param name="values"></pa ...

  5. Viking Village维京村落demo中的粒子距离消隐

    Custom/DistanceFade shader 粒子雾似乎可以使用.尝试给面片套用该效果,但由于有顶点变形,效果不太好,要做些改动

  6. 服务器端查看log的shell脚本

    持续过滤log脚本 服务器端持续查看log的shell脚本(其中path1和path2替换为路径特征名,“tail -f”后面接的路径替换为路径特征名所对应的log文件路径): #! /bin/sh ...

  7. Fiddler—PC上实现手机的抓包

    PC上安装Fiddler之后,可以抓取各种浏览器的请求,通过一些设置可以获取iPhone.安卓手机.windows phone的请求.具体的工作原理我也不多说(哼,绝对不是因为我不懂XD),主要说下如 ...

  8. int与string之间的类型转换--示例

    package demo; public class IntDemo { public static void main(String[] args) { // String-->int 类型转 ...

  9. FreeSWITCH无法读取wav文件

    错误日志如下: -- :: Invalid file format [wav] /suite-espanola-op--leyenda.wav]! -- :: Can't open /usr/loca ...

  10. 将InfoObject作为信息提供者Characteristic is InfoProvider

    声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...