A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

1)
(BOOL)respondToSelector:SEL       判断实例是否有这样的方法
#import <Foundation/Foundation.h>

int main(int argc, const char * argv[]) {
    @autoreleasepool {
        NSString *str = @"123";
        if([str respondsToSelector:@selector(appendString:)])
        {
            NSLog(@"str 对象有appendString:这个方法");
        }
    }
    return 0;
}
2015-09-05 14:23:37.477 test111[523:12834] str 对象有appendString:这个方法


2)
(BOOL)instancesRespondToSelector:SEL    判断一个类是否有这个方法
#import <Foundation/Foundation.h>

int main(int argc, const char * argv[]) {
    @autoreleasepool {
        if([NSString instancesRespondToSelector:@selector(stringWithFormat:)])
        {
            NSLog(@"NSString 类有stringWithFormat:这个方法");
        }
    }
    return 0;
}

但是这里没有输出,也就是返回NO,有点奇怪,NSString类明明有这个方法,却显示没有,想了半天也不知道为什么

1 个回复

倒序浏览
学习一下!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马