Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
menu search
person
Welcome To Ask or Share your Answers For Others

Categories

I was writing a small Category on NSString, and I wanted to know if this method is accurately handles all potential use cases:

Update: to clarify -- I wanted to make sure I'm not missing some oddball case involving character encodings, etc..

@implementation NSString (Helpers)

+(BOOL)stringIsNilOrEmpty:(NSString*)aString {
    if (!aString)
        return YES;
    return [aString isEqualToString:@""];
}
@end

Sample usage:

-(void) sampleUsage {
    NSString *emptyString = @"";
    NSString *nilString = nil;
    NSAssert([NSString stringIsNilOrEmpty:nilString] == YES, @"String is nil/empty");
    NSAssert([NSString stringIsNilOrEmpty:emptyString] == YES, @"String is nil/empty");
}
@end
question from:https://stackoverflow.com/questions/14472098/nsstring-nil-or-empty-check-is-this-complete

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
431 views
Welcome To Ask or Share your Answers For Others

1 Answer

I only use the next conditional and do not even need a category:

if (!aString.length)
{
    ...
}

Using Objective-C theory, a message to NIL will return nil or zero, so basically you do not have to test for nil.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
...