Foundation--NSSet

一、创建方法

#import <Foundation/Foundation.h>

int main(int argc, const char * argv[]) {
    @autoreleasepool
    {
        //集合中没有重复的元素,重复的元素会被过滤掉

        //标准创建方法
        NSSet *set1 = [NSSet setWithObjects:@"one",@"two",@"three",@"two", nil];
        NSLog(@"%@", set1);

        //副本创建方法
        NSSet *set2 = [NSSet setWithSet:set1];
        NSLog(@"%@", set2);

        //数组创建方法
        NSArray *str = @[@"one",@"two",@"three",@"two"];
        NSSet *set3 = [NSSet setWithArray:str];
        NSLog(@"%@", set3);

自定义类的对象在防止重复时 需要在.m文件中重写以下方法

-(NSUInteger)hash
{
    return YES;
    //在没有数值型属性的时候,返回YES,粗滤方法被屏蔽掉
}
-(BOOL)isEqual:(id)object
{
    if (self == object)
    {
        return YES;
    }
    if ([object isMemberOfClass:[self class]] == YES)
    {
            TRTeacher *t = object;
            if ([self.name isEqualToString:t.name] == YES && [self.course isEqualToString:t.course] == YES)
            {
                return YES;
            }
    }
    return NO;
}
阅读更多
文章标签: 标准
个人分类: Foundation
上一篇从键盘输入一个身份证号,获得该身份证主人年龄
下一篇Foundation之NSDictionary
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭