Objective-C中快速枚举和数组排序

快速枚举

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

}

object是遍历得到的元素对象,collection是集合类型的对象:数组,字典,集合.

数组枚举得到数组中的元素对象.

字典枚举得到字典中的key值.

集合枚举得到集合中的元素对象.

 1 // 数组
 2 NSArray *arr = [NSArray arrayWithObjects:@"iPhone", @"demaxiya", @"翡翠梦境", @"龙之谷", @"bloodStrike", dic, nil];
 3     // 数组快速遍历 得到每个元素
 4     for (NSString *temp in arr) {
 5         NSLog(@"temp %@", temp);
 6     }
 7 // 字典
 8 NSDictionary *dic = [NSDictionary dictionaryWithObjectsAndKeys:@"zhangsan", @"name", @"male", @"sex", @"18", @"age", nil];
 9     for (NSString *temp in dic) {
10     NSLog(@"temp %@", temp);
11     NSLog(@"%@ = %@", temp, [dic objectForKey:temp]);
12    }

数组排序

数组默认排序

不可变数组:[array sortedArrayUsingSelector:<#(SEL)#>].

1 NSArray *arr = [NSArray arrayWithObjects:@"1", @"4", @"2", @"3", nil];
2 NSLog(@"arr: %@", arr);
3 // 排序方法
4 // SEL        方法类型
5 // @seletor() 方法选择器
6 SEL method = @selector(compare:);
7 NSArray *arr1 = [arr sortedArrayUsingSelector:method];
8 NSLog(@"arr %@", arr1);

可变数组:[mutableArray sortUsingSelector:<#(SEL)#>].

1 // 可变数组排序
2     NSMutableArray *mArr = [NSMutableArray arrayWithArray:arr];
3     NSLog(@"arr: %@", arr);
4     [mArr sortUsingSelector:@selector(compare:)];
5     NSLog(@"arr: %@", mArr);
6     [mArr addObject:@"app"];
7     [mArr addObject:@"store"];
8     [mArr sortUsingSelector:@selector(compare:)];
9     NSLog(@"arr: %@", mArr);
时间: 2024-10-10 02:35:47

Objective-C中快速枚举和数组排序的相关文章

ObjectC----字典类和集合类以及快速枚举和OC中的数组排序

// Create By 郭仔  2015年04月01日20:06:36 // 不可变字典 // 字典是适用于存放键值对的一种集合,里面的元素必须是对象类型 // 字典是无序的 // 字典赋值 NSDictionary *dic = [NSDictionary dictionaryWithObjectsAndKeys:@"guozai",@"name",@"nan",@"sex",@"14",@"

Objective-C----快速枚举、数组排序

直接上代码: /* * 快速枚举 * */ NSLog( @"++++++++++++++++++" ) ; NSArray *testArray = @[@1, @2, @3, @4, @5] ; //通过快速枚举来遍历数组元素 for (NSArray *object in testArray) { NSLog( @"%@", object ) ; } //不确定类型时用 id for ( id object in testArray ) { NSLog( @&

OC --(5)-- 字典、集、数组排序:字典类、集合类、数组数组排序、字典、集合的快速遍历、数组排序

字典 1.快速枚举 forin   运行时不能更改内部数据 for (<#type *object#> in <#collection#>) { <#statements#> }         //对象                    //数组 for (Contact *contact in friends) {  [contact show];  } 判定是否为空  NSString *ns ==nil      NSInteger inte==0 一.字典

Excel技巧|如何在Excel中快速的批量将unix时间戳转化为北京时间

本文标签:  Excel技巧 unix时间戳转化北京时间 Excel时间戳转化北京时间 互联网杂谈 批量将将unix时间戳转化为北京时间 方法/步骤 单击要获得北京时间的那一列,右键,选择[设置单元格格式],在弹出的窗口中,左侧选择 [日期],右侧选择你想要的时间格式,点击确定. 选中其中一个单元格,输入公式 =(A2+8*3600)/86400+70*365+19 其中,A2是要转化的时间戳的单元格. 输入完公式,按下[回车键]. 该时间戳即转化为北京时间. 选中上面转化好的北京时间单元格,鼠

java实现.net中的枚举

Java 和 .net中的枚举不一样,在.net中,枚举是属于值类型的,而在java中确实引用类型的(其实就是一个特殊的类,enum默认集成java.lang.Enum类),所以在java中操作枚举类型就没有.net中那么方便了,比如:在.net中,可以很简单地给枚举赋值,也可以强制进行类型转换,非常方便,而在java中因为是引用类型,所以这样的操作是不行的,以下就是java中实现一些.net中枚举类型的功能,如下: enum Searson{ Spring("春", 2), Summ

表格布局扩展/DW设计界面中快速整体布局页面的操作

DW设计界面中快速整体布局页面的操作流程: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta htt

C#中的枚举类型(enum type)

ylbtech 原文 C#中的枚举类型(enum type) 概念 枚举类型(enum type)是具有一组命名常量的独特的值类型.在以下示例中: enum Color { Red, Green, Blue } 声明一个名为 Color 的枚举类型,该类型具有三个成员:Red.Green 和 Blue. 枚举具体是怎么声明呢?枚举声明用于声明新的枚举类型.枚举声明以关键字 enum 开始,然后定义该枚举类型的名称.可访问性.基础类型和成员.具体格式: 修饰词(new.public.protect

Java中Enum枚举的使用

注意项: 1.在switch中使用枚举能使代码的可读性更强. 2.如果要自定义方法,那么必须在enum实例序列的最后添加分号.而且Java要求必须先定义enum实例. 3.所有的枚举都继承自java.lang.Enum类,由于Java不支持多继承,所以枚举对象不能再继承其他类. 4.如果想让枚举对应值,那么要写构造方法,也可以再覆盖toString()方法

NSDictionary使用快速枚举方法

上一章我们通过一个枚举器访问并返回字典里的键值, 现在我们通过快速枚举来查找键对应的值. 涉及到的方法: objectForKey: 这个方法的意思是返回一个值给对应的键, 下面使用了两次这个方法, 第一次没在循环里面使用, 输入了值@"1", 对应的值就是@"One". PS: 在这里, 我们找到了键, 就代表找到了值. 下面是例子: #import <Foundation/Foundation.h> int main(int argc, const