OC5-NSNumber 数组字典的方法

  数字--NSNumber   字典--dictionary   集合-- NSset   数组的排序(动态排序)。bolck函数指针。

 1.NSNumber:Oc中很多地方限制了参数和元素必须是对象类型,

    数组,字典,集合 nsstring 是字符串类型的数组, nsinteger不是一个对象类型:char,cgfloat,bool ,nsrange,cgsize,

   (1)提供了一种方式将数据类型转化成对象,这种方式就是Nsnumber,

 nsnumber的使用思路,在存储之前,先将数据类型转化成Ns number 类型后再存储,时候是取出nsnumber,再转换成基本数据类型。  

   1)将int转化成,float,char;

  2.存储结构体:NSValue;NSNumber 是专门存储基本数据类型的,

     NSValue是专门存储结构体的。两个的用法和思路是一样, NSNumber是ininwith类型-存的,类型value -取的,NSValue是通过遍历构造器valuewithrange-存,rangeValue-取,

 (1)创建range 结构体类型,

 (2)把这个结构体转换成nsvalue类型。

 (3)将nsvalue存储到数组里面,

 (4)从数组中拿到存储的value,

 (5)打印验证我们拿到的是否成立。

 3.字典:以%@格式打印字典,控制台输出{‘’=‘’}

 (1)再oc里面有一种类,是字典类,里面数据都是键值对的形式存在, 

  (2)键值对 key关键字:value:关键字 key对应的值

   (3)字典里面可以有很多的键值对,里面数据是无序存在的,

    (4)在字典类里 key值是不能重复的,但是value是可以的

     (5)在取值时,不允许通过下标来访问,只能通过key来访问,

      (6)字典也分可变和不可变,

 6. 集合

   特点(1)乱序的(2)其中元素不重复(3)

 打印集合元素的个数;打印是否包含:返回任意一个元素

  实现便利一个字典里的任意一个的元素,虽然是随机的,但是当set中的数据不变时,anyobject返回的元素是一样的。

  实现返回集合的所有元素。

 利用集合的不重复性,可以实现数组元素的去重复。add 添加进集合,再使用setallobject,实现输出数组

 7.带计数的集合。因为集合重复添加只保留一个,那么oc提供了一个集合类,可以统计每个元素重复的次数

  继承自Nsmutableset,所有的属性和方法都可用。

 8.快速遍历:增强for循环:for in。快速便利数组,字典

 for (<#type *object#> in <#collection#>) {

 <#statements#>

 }

 第一个参数,其中每个元素的类型,第二个元素是存储的类型的对象名,第三个是需要遍历的合集名,

 9.  增强for循环的在遍历字典的时候,每次返回的是key的值。

 10.数组排序。 a1=[a1 sortedArrayUsingSelector:@selector(compare:)];

   (1) 数组提供方法,排序,sortedArrayUsingSlector  :@selector(compare:)

       参数返回的是selector 方法的返回值。

   @selector,会去对象中寻找括号里面的方法名,并返回,若参数是sel,就是要在这里传入一个方法,做法就是通过@selctor和括号里面的方法名确定方法,

原文地址:https://www.cnblogs.com/ytmaylover/p/5049193.html