八天学会OC

第07天OC语言(10):字符串比较

2017-07-22  本文已影响10人  liyuhong
须读:看完该文章你能做什么?

字符串的内容比较
字符串的大小比较(忽略和不忽略大小写)

学习前:你必须会什么?(在这里我已经默认你具备C语言的基础了)

NSString的基本使用


一、本章笔记
 一、比较两个字符串的"内容"是不是相同
    isEqualToString
 二、比较字符串的大小
    - (NSComparisonResult)compare:(NSString *)string; // 不忽略大小写
    - (NSComparisonResult)caseInsensitiveCompare:(NSString *)string; // 忽略大小写

二、code
main.m
#pragma mark 10-字符串比较
#pragma mark 概念
/*
 一、比较两个字符串的"内容"是不是相同
    isEqualToString
 二、比较字符串的大小
    - (NSComparisonResult)compare:(NSString *)string; // 不忽略大小写
    - (NSComparisonResult)caseInsensitiveCompare:(NSString *)string; // 忽略大小写

 */
#pragma mark - 代码
#import <Foundation/Foundation.h>
#pragma mark 类

#pragma mark - main函数
int main(int argc, const char * argv[])
{
#pragma 1.比较两个字符串的"内容"是不是相同
    /*
    NSString *str1 = @"abc";
    NSString *str2 = @"abcd";
    // 比较两个字符串的"内容"是不是相同
    BOOL flag = [str1 isEqualToString:str2];
    NSLog(@"flag = %i",flag);
    
    // 下面这方法, 是 比较两个字符串的 "地址" 是否相同
    flag = (str1 == str2);
    NSLog(@"flag = %i",flag);
    */
    
#pragma 2.比较两个字符串的大小
    NSString *str1 = @"abc";
    NSString *str2 = @"ABC";

//     NSComparisonResult
//     typedef NS_ENUM(NSInteger, NSComparisonResult) {NSOrderedAscending = -1L, NSOrderedSame, NSOrderedDescending};
//     
//     NSOrderedAscending     升序 (前面的 小于 后面的)
//     NSOrderedSame          相等
//     NSOrderedDescending    降序 (前面的 大于 后面的)
//    [str1 compare:str2];
    switch ([str1 compare:str2]) {
        case NSOrderedAscending:
            NSLog(@"str1 小于 str2");
            break;
        case NSOrderedSame:
            NSLog(@"str1 等于 str2");
            break;
        case NSOrderedDescending:
            NSLog(@"str1 大于 str2");
            break;
            
        default:
            break;
    }
#pragma 忽略大小写的比较
//    [str1 caseInsensitiveCompare:str2];
    switch ([str1 caseInsensitiveCompare:str2]) {
        case NSOrderedAscending:
            NSLog(@"str1 小于 str2");
            break;
        case NSOrderedSame:
            NSLog(@"str1 等于 str2");
            break;
        case NSOrderedDescending:
            NSLog(@"str1 大于 str2");
            break;
            
        default:
            break;
    }
    
    
    return 0;
}

上一篇 下一篇

猜你喜欢

热点阅读