天天看點

OC05 集合

//

//  main.m

//  OC05 集合

//

//  Created by xalo on 15/10/30.

//  Copyright (c) 2015年 康大亮. All rights reserved.

//

#import <Foundation/Foundation.h>

int main(int argc, const char * argv[]) {

#pragma mark -NSSet集合類(使用不多)

    #pragma mark --建立一個集合對象

    NSSet *set1 = [NSSet setWithObjects:@"2", @"4", @"3", @"人", @"1", nil];

    // 因為有兩個相同的對象,是以集合在存儲時,隻存儲一個

    NSLog(@"%@", set1);

    #pragma mark --擷取集合中元素的個數

    int count = (int)[set1 count];

    NSLog(@"%d", count);

    #pragma mark --擷取集合中全部的元素

    NSArray *array = [set1 allObjects];

    NSLog(@"%@", array);

    #pragma mark --随機擷取集合中的某個元素

    id item = [set1 anyObject];

    NSLog(@"%@", item);

    #pragma mark --判斷一個集合和另一個集合是否相等 

    NSSet *set2 = [NSSet setWithObjects:@"3", @"2", @"1", @"人", @"4", nil];

    BOOL boolResult = [set1 isEqualToSet:set2]; // set1比較set1裡面有的set2裡有沒有。

    NSLog(@"%d", boolResult);

    #pragma mark --判斷某個集合中是否包含某個對象

    id result = [set2 member:@"9"];

    NSLog(@"%@", result);

#pragma mark -可變集合NSMutableSet

    // 建立一個可變集合的對象,對可變集合進行操作

    NSMutableSet *mSet = [NSMutableSet setWithObjects:@"1",@"2",@"3",@"4",@"5", nil];

    NSLog(@"%@", mSet);

    #pragma mark --給可變集合 添加 一個元素

    [mSet addObject:@"8"];

    NSLog(@"%@", mSet);

    #pragma mark --删除 一個元素

    [mSet removeObject:@"8"];

    NSLog(@"%@", mSet);

    #pragma mark --删除 全部元素

    [mSet removeAllObjects];

    NSLog(@"%@", mSet);

    #pragma mark --NSCountedSet記錄元素的重複次數

    NSCountedSet *cSet = [NSCountedSet setWithObjects:@"1",@"2",@"3",@"4",@"4", nil];

    int count1 = (int)[cSet countForObject:@"4"];

    NSLog(@"%d, %@", count1, cSet);

    return 0;

}