iOS 數組去重


.利用NSDictionary的AllKeys(AllValues)方法
可以將NSArray中的元素存入一個字典,然後利用AllKeys或者AllValues取得字典的所有鍵或值,這些鍵或值都是去重的。
示例代碼:

    NSArray *arr = @[@111,@222,@111];

    NSMutableDictionary *dict = [NSMutableDictionary dictionary];

    for (NSNumber *number in arr) {

        [dict setObject:number forKey:number];

    }

    NSLog(@"%@",[dict allValues]);

輸出結果爲:


2013-05-21 12:03:49.449 test1[4377:c07] (

    111,

    222

)


2.利用NSSet的AllObjects方法
這種方法更快,利用NSSet不會添加重複元素的特性。不過去重的數組沒有進行排序,如果需要排序,可以使用NSSortDescriptor類。
示例代碼:

    NSArray *arr = @[@111,@222,@111];

    NSSet *set = [NSSet setWithArray:arr];

    NSLog(@"%@",[set allObjects]);

輸出結果爲:


2013-05-21 12:06:26.508 test1[4547:c07] (

    111,

    222

)


發佈了43 篇原創文章 · 獲贊 13 · 訪問量 9萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章