iOS比较枚举NSOrderedSame NSOrderedAscending NSOrderedDescending使用小结
项目开发中偶然间看到这种比较枚举,之前没注意过,仔细研究了一下结果还挺有意思,我们可以用升降序相等来帮助理解比较结果。
NSString 两个字符串的比较,用 a compare:b 来比,得出的结果分3种
26个字母比较 越靠后面 越大
NSString *a = @"qweqwe";
NSString *b = @"qweasd";
BOOL result = [a compare:b]; //等同于if ([a compare:b options:NSNumericSearch])
if (result == NSOrderedSame) { //NSOrderedSame = 0 完全一样
NSLog(@"a = b");
}else if(result == NSOrderedAscending) // NSOrderedAscending = -1 升序
NSLog(@"a < b");
else{ //NSOrderedDescending = +1 降序
NSLog(@"a > b");
}
比较条件可以自行设置
- NSCaseInsensitiveSearch 忽略大小写的比较字符串
- NSNumericSearch 比较字符串的个数
- NSLiteralSearch 区分大小写,进行完全比较
iOS比较枚举NSOrderedSame NSOrderedAscending NSOrderedDescending使用小结的更多相关文章
- iOS 键盘自适应(IQKeyboardManager)使用小结
IQKeyboardManager Github地址 经常在开发一个应用程序,我们遇到了一个问题,iPhone的键盘上滑覆盖的UITextField / UITextView.IQKeyboardMa ...
- OC基础 - iOS在枚举赋值时为何采用左移格式
枚举值 1 - iOS 枚举成员在赋值时往往是如下模式:左移对齐 2 - 为何这般设计 ?其一提高了阅读性:其二便于计算,能够更好的表达枚举值的含义 1 #import "ViewContr ...
- iOS/object-c: 枚举类型 enum,NS_ENUM,NS_OPTIONS
一般情况下,我们采用C风格的enum关键字可以定义枚举类型. enum{ UIViewAnimationTransitionNone, UIViewAnimationTransitionFlipFro ...
- iOS 关于枚举的使用
枚举值 它是一个整形(int) 并且,它不参与内存的占用和释放,枚举定义变量即可直接使用,不用初始化. 在代码中使用枚举的目的只有一个,那就是增加代码的可读性. 使用: 枚举的定义如下: typed ...
- iOS中枚举定义的三种方式
最简单的方式 typedef enum{ num1 = 0, num2 = 1, num3 = 2 }num; 同时我们还可以使用NS_ENUM的方式定义枚举 typedef NS_ENUM (NSI ...
- 6、iOS快速枚举
今天在写程序的时候想在当前视图跳转的时候释放掉当前视图上面add的一些子视图.因为add的子视图有些是在别的类里面add进来的,当前页面不知道自己当前有哪几个类型的子视图.这样,我就想到了用循环遍历来 ...
- ios对于枚举的使用
引言: 枚举值 它是一个整形(int) 并且,它不参与内存的占用和释放,枚举定义变量即可直接使用,不用初始化. 在代码中使用枚举的目的只有一个,那就是增加代码的可读性. 使用: 枚举的定义如下: t ...
- iPhone/iOS开启个人热点的相关位置调整小结
冬至已到,圣诞将近,最近公司项目实在太多,三四个项目反复的切换真的让人焦头烂额,趁今天有点空,把维护的三个项目顺利送出,刚好可以缕缕思路,记录一下最近遇到的问题.说不着急那是假的,客户一天天的催的确实 ...
- 关于 ios 动画枚举翻译
例子 + (void)animateWithDuration:(NSTimeInterval)duration delay:(NSTimeInterval)delay options:(UIViewA ...
- iOS开发系列之四 - UITextView 使用方法小结
// 初始化输入框并设置位置和大小 UITextView *textView = [[UITextView alloc] initWithFrame:CGRectMake(10, 10, 300, 1 ...
随机推荐
- ThinkPHP6支持金仓数据库(Kingbase)解决无法使用模型查询问题
参考了很多前人的文章,最后只支持Db::query原生查询,不支持thinkphp数据模型方法,这在实际项目中是很难接受的,特分享出解决方案. 先按照流程配置如下: 1.准备工作 首先确认PHP支持金 ...
- 【Vue】el-table 简易表格可筛选列
需求实现: 代码逻辑: 按钮控件: <el-popover placement="top-start"> <el-checkbox-group v-model=& ...
- 【Git】Gitlab仓库访问拒绝,SSL校验影响
更新代码失败,不可访问[XX]仓库 fatal: unable to access 'https://gitcyx.yycsy.com/dmscloud/dcs/dcs-vue-coordinate. ...
- 如何理解自动驾驶的分级:L0、L1、L2、L3、L4、L5
相关: https://baijiahao.baidu.com/s?id=1792281493472406727&wfr=spider&for=pc L0,就是完全没有自动驾驶技术的车 ...
- AI机器人——人形机器人、双足机器人、四足机器人 —— 组成构建有哪些?
参考: https://www.youtube.com/watch?v=dLELvoFt_iA
- java中sleep与 yield 区别
1.背景 在多线程的使用中你会看到这个两个方法sleep()与yield()这两方法有什么作用呢? 请看下面案例演示 2.测试 package com.ldp.demo01; import com.c ...
- 被怼了:acks=all消息也会丢失?
消息队列是面试中一定会被问到的技术模块,虽然它在面试题占比不及并发编程和数据库,但也属于面试中的关键性问题.所以今天我们就来看一道,MQ 中高频,但可能会打破你以往认知的一道面试题. 所谓的关键问题指 ...
- Apache DolphinScheduler 1.3.4升级至3.1.2版本过程中的踩坑记录
因为在工作中需要推动Apache DolphinScheduler的升级,经过预研,从1.3.4到3.1.2有的体验了很大的提升,在性能和功能性有了很多的改善,推荐升级. 查看官方的升级文档,可知有提 ...
- 【客户案例】白鲸开源WhaleStudio助力某证券公司打造全面数据解决方案:探析DataOps平台革新与应用
背景 近年来随着国际形势的变化,信创产业成为我国国家战略的一部分.一直以来,一直以来,全球 ICT 产业底层标准.架构.产品.生态等要素均由国外公司或机构制定和控制,使我国 ICT 产业乃至广大用户面 ...
- 【A GUIDE TO CRC ERROR DETECTION ALGORITHM】 (译文1)
A GUIDE TO CRC ERROR DETECTION ALGORITHM (译文) <A PAINLESS GUIDE TO CRC ERROR DETECTION ALGORITHM& ...