iOS开发之字符串比较
Object-c中比较两个字符串是否相等时,应该用isEqualToString:而不能仅仅只是比较字符串的指针值。
NSString *str1=@"hello 1"; NSString *str2; str2=[NSString stringWithFormat:@"hello %d", 1]; if ([thing1 isEqualToString:thing2]){ NSLog(@"They are the same!") } |
这是比较内容
if (str1==str2){ NSLog(@"They are the same!") } |
这是比较指针地址
这是因为==运算符只判断str1和str2的指针数值,而不是他们所指的对象。由于str1,str2是不同的字符串,所以第二种比较方式会认为它们是不同的。
有时我们想检查两个对象的标识:str1和str2是同一个对象吗?这时就应该使用运算符==。如果是想查看等价性(即这两个字符串是否代表同一个事物吗),那么请使用isEqualToString:
本文固定链接: http://www.istar.name/blog/ios-development-isequaltostring | Star's Blog
iOS开发之字符串比较的更多相关文章
- iOS开发JSON字符串和字典互转
1.相关属性简述 NSJSONReadingOptions读取属性: typedef NS_OPTIONS(NSUInteger, NSJSONReadingOptions) { NSJSONRead ...
- iOS开发——常用字符串string相关方法和处理
(持续更新中……) 1,四舍五入 2,剔除字符 3,拼接字符 4,字符个数和长度 5,字符串的比较 6,字符串的范围 7,字符串转Number类型
- ios开发中字符串的常用功能总结
1.分割字符串 NSString * str1 = @"123/456"; NSArray * arr1 = [str1 componentsSeparatedByString:@ ...
- ---iOS开发 截取字符串中两个指定字符串中间的字符串---
例如,要截取一个字符串中,两个指定字符串中间的字符串,OC截取方法如下: // 要截取 "> 和 </ 之间的汉字内容: @implementationViewControlle ...
- iOS开发 判断字符串是不是网址
- (BOOL)isUrlString { NSString *emailRegex = @"[a-zA-z]+://.*"; NSPredicate *emailTest = [ ...
- iOS开发 判断字符串是不是表情
+ (BOOL)stringContainsEmoji:(NSString *)string { __block BOOL returnValue = NO; [string enumerateSub ...
- iOS开发 返回字符串的宽高
- (CGFloat)achiveWidthWithHeight:(CGFloat)height Font:(UIFont *)font { CGSize size = [self boundingR ...
- iOS开发之-- 字符串的操作,去掉某一个字符或者替换成其他字符
一个简单的操作,记录下: NSString *strUrl = [urlString stringByReplacingOccurrencesOfString:@" " withS ...
- ios开发之--字符串局部改变颜色
改变指定位置字符的颜色,代码如下: NSString *descStr = @"楼主"; NSString *nickStr = [NSString stringWithForma ...
随机推荐
- windows 10 change default program bug
windows 10 change default program bug https://www.isumsoft.com/windows-10/how-to-change-or-set-defau ...
- Java中类的继承深入剖析
在Java开发中,我们常常用到继承这一概念,可以说继承是Java这类面向对象编程语言的基石.正是有了继承这个概念,使得我们可以创建分等级层次的类.今天小编就和大家一起来深入聊聊Java语言的继承. 在 ...
- jmeter的build.xml
<?xml version="1.0"?><!-- Licensed to the Apache Software Foundation (ASF) unde ...
- [洛谷P3810]【模板】三维偏序(陌上花开)
题目大意:有$n$个元素,第$i$个元素有三个属性$a_i,b_i,c_i$,设$f(i)=\sum\limits_{i\not = j}[a_j\leqslant a_i,b_j\leqslant ...
- 如何用js让表格的行也能拖动
行拖动的实现思路非常简单,选中一行,往上拖就与上面的行交换位置,往下拖就与下面的行交换位置.问题是如何得到交换行.我见过一个非常详细的教程,它会把表格里的每一行的高度与Y坐标计算出来,换言之,都时是比 ...
- 《c程序设计语言》读书笔记-5.5-指针实现strncpy,strncat,strncmp
#include <stdio.h> #include <math.h> #include <stdlib.h> #include <string.h> ...
- 「BZOJ4029」[HEOI2015] 定价 贪心
「BZOJ4029」[HEOI2015] 定价 2015年4月28日2,7490 Description 在市场上有很多商品的定价类似于 999 元.4999 元.8999 元这样.它们和 1000 ...
- RDM原始设备映射
在一个存储区域网络(SAN)上,有两种方法为虚拟机配置存储.一种方法是使用VMFS,这是VMware Infrastructure(VI)提供的专有高性能集群文件系统.对大多数企业应用来说,在VMFS ...
- readbook:自己设计mvc框架,java类似struts2的实现
如果你不能简单说清楚,就是你还没有完全明白.——爱因斯坦 need things: 1.操作xml文档 dom4j 等开源类库 2. dtd的验证 等知识储备 * n到n次 ? 0到1次 ...
- AGC007 - C Pushing Ball
Description 题目链接 懒得写详细题意了, 放个链接 \(n\le 2*10^5\) 个球, \(n+1\) 个坑, 排成数轴, 球坑交替. 相邻球-坑距离为等差数列 \(d\). 给定首项 ...