美文网首页
两个问题讨论:1.字符串大小写无关相等 ; 2.数组中如何放入一

两个问题讨论:1.字符串大小写无关相等 ; 2.数组中如何放入一

作者: 小苗晓雪 | 来源:发表于2017-04-10 20:48 被阅读5次

写在前面的话

  • 之前的同事问我字符串的问题 , 说字符串很简单 , 被我痛批 !我们的UI界面说破大天就是图片 + 字符串 !!!我们花费多少的精力和时间在字符串的问题上都不为过!

  • 说到 UI就不得不提到最近在学习也是在复习的React Native , 上次学习的时候已经是去年的事儿了~回想一看还是有很多地方值得深究 , RN真正的操作点 , 应用点就是UI方面的设计! 就是因为UI可以应用RN所以他才有价值!!!

比较顺手的 Xcode快捷键
Tips
command + shift + O快捷键可以快速打开系统或者自己想要查找的代码!
command + shift + J可以迅速定位我当前的页面文件在左侧bundle栏的具体位置!
非常常用的快捷键分享给之前问我的同事和身边的小伙伴还有不知道的真应该 "鞭尸" 你们!!!哈哈哈

NSString.h文件第18~28行 typedef NS_OPTIONS(NSUInteger, NSStringCompareOptions) 结构体代码
NSCaseInsensitiveSearch代表大小写无关相等

typedef NS_OPTIONS(NSUInteger, NSStringCompareOptions) {
    NSCaseInsensitiveSearch = 1,
    
/* Exact character-by-character equivalence */
NSLiteralSearch = 2,        
    
/* Search from end of source string */
NSBackwardsSearch = 4,      
    
/* Search is limited to start (or end, if NSBackwardsSearch) of source string */
NSAnchoredSearch = 8,       
    
/* Added in 10.2; Numbers within strings are compared using numeric value, that is, Foo2.txt < Foo7.txt < Foo25.txt; only applies to compare methods, not find */
NSNumericSearch = 64,       
 
NS_ENUM_AVAILABLE(10_5, 2_0) = 128,    
/* If specified, ignores diacritics (o-umlaut == o) */
NSDiacriticInsensitiveSearch 
    
NS_ENUM_AVAILABLE(10_5, 2_0) = 256, 
/* If specified, ignores width differences ('a' == UFF41) */
NSWidthInsensitiveSearch 
    
NS_ENUM_AVAILABLE(10_5, 2_0) = 512, 
/* If specified, comparisons are forced to return either NSOrderedAscending or NSOrderedDescending if the strings are equivalent but not strictly equal, for stability when sorting (e.g. "aaa" > "AAA" with NSCaseInsensitiveSearch specified) */
NSForcedOrderingSearch 

NS_ENUM_AVAILABLE(10_7, 3_2) = 1024
/* Applies to rangeOfString:..., stringByReplacingOccurrencesOfString:..., and replaceOccurrencesOfString:... methods only; the search string is treated as an ICU-compatible regular expression; if set, no other options can apply except NSCaseInsensitiveSearch and NSAnchoredSearch */
NSRegularExpressionSearch     
}

示例代码

NSString *str1 = @"🍎" ;
        NSString *str2 = @"🍌" ;
        NSComparisonResult compareResult = [str1 compare:str2 options:NSCaseInsensitiveSearch] ;
        BOOL result1 = compareResult == 0 ;
        BOOL result2 = [str1 isEqualToString:str2] ;
        NSLog(@"compare: %@ , isEqualToString:%@" , result1 ? @"YES" : @"NO" , result2 ? @"YES" : @"NO") ;

数组中放入一个空对象 -- NSNull的使用

//遍历数组中的元素 , 直到找到nil就停止 , 
//nil之前所遍历的元素就是该数组中的元素:
NSArray *array1 = [[NSArray alloc] initWithObjects:@1 , @2 , @3 , @4, nil] ;
//如果我直接放入一个nil到数组中势必会遍历不完全 , 
//如果我在@3位置放入nil , 那么就只会输出1, 2 这两个值 , 
//4就不会被输出了!所以这时候NSNull就有了用武之地了!
NSArray *array2 = [[NSArray alloc] initWithObjects:@1 , @2 , [NSNull null] , @4, nil] ;
NSLog(@"array1: %@ , array2: %@" , array1 , array2) ;

愿编程让这个世界更美好

相关文章

  • 两个问题讨论:1.字符串大小写无关相等 ; 2.数组中如何放入一

    写在前面的话 之前的同事问我字符串的问题 , 说字符串很简单 , 被我痛批 !我们的UI界面说破大天就是图片 + ...

  • 前端算法面试题整理

    1.统计字符串出现最多的字母及其次数 2.排序算法 3去重算法 4.判断位置数组是否相等 首先判断两个数组是否相等...

  • 22.JavaScript-数组常用方法

    1.如何清空数组 2.如何将数组转换为字符串 3.如何将数组转换成指定格式字符串 4.如何将两个数组拼接为一个数组...

  • golang strings 字符串操作

    判断 EqualFold 判断两个字符串是否相等, 不区分大小写 HasPrefix 是否包含某前缀, 区分大小写...

  • 字符串的应用举例

    问题:给定两个字符串,如何确保这两个字符串长度相等,并且字符串儿中不同字符出现的个数不能超过3个?   上面的问题...

  • 判断两个数组是否相等

    如何比较两个数组内容是否相等一、不能通过 '==' 或者 '===' 来判断两个数组是否相等 因为JavaScr...

  • js的for,while,do…while循环

    1. for,while,do…while循环 2. 数组去重 3. 字符串处理方法(分隔,截取,下标取值,大小写...

  • 第三章 if语句

    一、条件测试 1.检查是否相等(“=”是赋值,“==”是判断值是否相等) 2.检查相等时不考虑大小写 在Pytho...

  • js 常用案例技巧

    1.转换字符串所有字母大小写 2.字符串首字母转化大写 3.数组随机排列 4.求数组的最大值 5.求数组的随机数 ...

  • 无重复最长子串

    /***遍历字符串放入数组*1.当前字符在数组中之前是否出现过*2.出现过,删除之前一个字符包含它之前的*3.添加...

网友评论

      本文标题:两个问题讨论:1.字符串大小写无关相等 ; 2.数组中如何放入一

      本文链接:https://www.haomeiwen.com/subject/vljeattx.html