NSString的各种用法总结(创建、截取、判断比较、转化数据类型、拼接、替换、添加、追加、读取、写入、删去、改变)

1、创建字符串1)NSSring *str = @”adf”;2)NSString *str1 = [NSString new];NSString *str2 = [[NSString alloc] initWithString:@”adf”]; (等同于1)4)NSString *str3 = [NSString stringWithFormat:@”name is %@”,@”小小”];5)char *c = “小小”;NSString *str4 = [[NSString alloc] initWithCString:c encoding:nil];2、获取字符串(截取后创建了新的字符串,不改变原來的字符串)NSString *str = @”www.itcast.cn”;1)获取字符串的长度NSUInteger length = [str length];//str.length2)根据索引获得单个字符unichar c = [str characterAtIndex:5];//索引从0开始3)根据索引获得字符串的一个子串1> 截取字符从某个位置开始到末尾NSString *str1 = [str substingFormIndex:3];//从给定的索引(包含该索引位置)截取到字符串末尾2> 截取字符从某个位置开始到首位NSString *str2 = [str substringToIndex:3];//截取字符串到给定索引的位置(不包含该索引的位置)3> 截取字符从某个位置開始到某个位置結束NSRang *rang = {1,2};//location(索引位置)、length(截取的長度)NSString *str3 = [str substringWithRange:rang];//包含該索引的位置4> 获得一个字符串在字符串中的索引位置、長度NSRange range = [str rangeOfString:str3];NSLog(@”%@”,NSStringFormRange(range));3、判斷字符串是否為空或者相同1)判斷是否是為空Str == nil || str.length == 0;2)判斷是否已指定的內容開頭BOOL isPerfix = [str hasPrefix:@”xww”];3)判斷是否已指定的內容結尾BOOL isSuffix = [str hasSuffix:@”xww”];NSLog(@“%@”,is?@“YES”:@“NO”);4)判斷兩個字符串是否相等NSString *str4 = @“abc”;NSString *str5 = @“abc”;NSString *str6 = [NSString stringWithFormat:@“%@”,@“abc”];1> 用if語句,==來判斷,但是==的意思是內存地址相同,則判斷就相同,str4和str5內存地址相同(運行時回去換存池中找,有相同的就直接拿過來,沒有就創建),和str6的內存地址不相同。2> BOOL isEqual = [str5 isEauqlToString:str6];//先判斷字符串的地址是否相同,如果相同,再判斷字符串是否相等。3> NSComparisonResult result = [Str5 compare:str6];switch (result){case NSOrderedAscending://阿詩瑪值小break;case NSOredredSame://字符串相等break;caes NSOrderedDeescending://阿詩瑪值大break;Deafault;break;}4、基本數據類型和字符串相互轉化基本數據類型(int、float、double、char)1)基本類型轉換成字符串int a = 10;[NSString stringWithForamt:@“%d”,a];float f = 2.4 -> @“%.1f”double d = 68.9999 -> @“%.4f”,dchar c = ‘c’ -> @“%c”,c2)字符串轉換成基本數據類型//floatValue、doubleValue、intValueNSString *str = @“32432”;int i = [str intValue];//@“i234324”這個轉換要注意,以上轉換不了3)將字符串中的字母轉換成大寫NSString *str = @“china”;NSString *str1 = [str1 uppercaseString];4)將字符串中的字母轉換成小寫NSString *str = @“china”;NSString *str1 = [str1 lowercaseString];5)將字符串的首字母轉成大写NSString *str = @“CHINA”;NSString *str = [str capitalizedString];5、多个数据拼接成一个字符串int year = 1988;int month = 4;int day = 15;NSString * date = [NSString stringWithFormat:@"%d年%d月%d日",year,month,day];NSLog(@"date %@",date);NSString * address = @"昌平区,金燕龙";NSString * dateAndAddrss = [NSString stringWithFormat:@"%@地址:%@",date,address];NSLog(@"dateAndAddress %@",dateAndAddrss);6、字符串的末尾追加新的字符NSString * str1 = @"www.";NSString * str2 = [str1 stringByAppendingString:@"itcast.cn"];NSLog(@"str2 %@ str1 %@",str2,str1);7、在制定的范围追加字符串NSString * str3 = @"www.cn";NSRange range = {4,0};// 4 location代表的时从哪个索引开始插入,length 代表的意思可以覆盖几个字符NSString * str4 = [str3 stringByReplacingCharactersInRange:range withString:@"itcast."];NSLog(@"str4 %@",str4);8、使用新的字符,替换原有的字符NSString * str5 = @"www.itcast.cn";NSString * str6 = [str5 stringByReplacingOccurrencesOfString:@"w" withString:@"a"];NSLog(@"str6 %@",str6);//5.在字符串中删除特定的某些字符 胡汉三 hhsNSString * str7 = @"www---.itcatst.--cn";NSString * str8 = [str7 stringByReplacingOccurrencesOfString:@"-" withString:@""];NSLog(@"str8 %@",str8);9、去掉字符串中的空格NSString * str9 = @"www  .itcat  .cn";NSString * str10 = [str9 stringByReplacingOccurrencesOfString:@" " withString:@""];NSLog(@"str10 %@",str10);10、讀取、寫入文件NSString *content = @“浙江冰雹,大如湯圓”;NSString *path = @“/Users/apple/Desktop/my.text”;NSError *error;1>將字符串寫入文件BOOL isWriteSuccess = [Content writeToFile:path atomically:YES encoding:NSUTF8StringEncoding error:&error];If (isWriteSuccess){NSLog (@“寫入文件成功,創建文件”);}else{NSLog (@“@“%@”,error”);}2> 從文件中讀取字符串NSString *str = [NSString stringWithContentsOfFile:path encoding:NSUTF8StringEncoding error:$error];If(error! = nil){NSLog(@“%@”,error);}else{NSLog(@“寫入成功%@”,str);}11、可變長度字符串的用法NSMutableString//原來的字符串沒有變,只是重新創建了一個新的字符串NSString *str = @“我喜歡”;NSString *str1 = [str stringByAppendingString:@“蘋果”];//兩種方法可改變原來長度字符串NSMutableString *mstr = [[NSMutableString alloc] init];//方法一NSMutableString *mstr = [[NSMutableString alloc] initWithCapacity:0];//方法二[mstr setString@“蘋果”];//是初始化字符串內容[mstr appendString:@“電腦”];//動態的給字符串末尾追加新值[mstr insertString:@“手機” atIndex:3];//在指定的索引位置插入字符串//刪去指定範圍的字符串NSRange range = {3,5};[mstr deleteCharactersInRange:rang];//替代其中的字符[mstr replaceCharactersInRange:range withString@“i love”];

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/247960.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Vue — 第七天(vue-cli-案例)

资料获取地址: github: https://gitee.com/wang_yu5201314/VUE_vuecli SSH: gitgitee.com:wang_yu5201314/VUE_vuecli.git hero案例-项目介绍 功能介绍: 三个模块 英雄列表(只做这个)装备列表技能列表 英雄列表 列表组件删除功能添加组件编…

postman测试工具

做文件上传测试的时候可以选择输入方式为文件 做文件下载测试的时候,可以选择 转载于:https://www.cnblogs.com/thesun/p/10853226.html

webpack — 概述介绍

webpack概述 webpack是一个流行的前端项目构建工具(打包工具),可以解决当前web 开发中所面临的困境。 webpack提供了友好的模块化支持,以及代码压缩混淆、处理js兼容问题、性能优化等强大的功能,从而让程序员把工作的…

彻底解决iOS项目中 _OBJC_CLASS_$_XXXService, referenced from: 的类似问题

这是大家熟悉的开发过程中可能遇到的问题 这是提交源码到appStore不支持64位设备的提示 本人在提交项目到appStore时发生的的错误,提示必须要支持64的设备,然后自己赶紧进行相关的适应,出现了类似标题的问题,解决方法如下: 1、…

THUPCCTSAPIO2019:Far Away

流水账~ THUPC nmdwsmduliu! THUPC Day -INF~Day -2 大概就是自己做题和每周两次的考试,lsy和fcw两个外校的来吊打我们qwqqq THUPC Day -1 Z208 长沙->北京 在车上看gzy/tjj/xzz打摆? THUPC Day 0 从火车站出来做地铁的时候和tjj做反了可海…

UIDocumentInteractionController之程序间文档共享

iOS中的沙盒可以让平台更加的安全,这也是沙盒给用户带来的最主要好处。不过由于沙盒的严格限制,导致程序之间共享数据比较麻烦。一般在程序间共享文档可以通过UIDocumentInteractionController类实现通讯。它支持在你的app中用其他app预览和显示文档。同…

webpack — 概述 (2)

webpack学前必备 webpack中文网 webpack官网 1. Webpack 介绍 Webpack 是什么?? (面试) 前端模块化打包工具WebPack可以看做是模块打包机:它做的事情是,分析你的项目结构,找到JavaScript模块、其它的一些浏览器不能直接运行的拓展语言…

VUE安装依赖命令总结

以下是个人用到过的vue安装包以及依赖命令(在接触项目时,有未写到的会随时补充) 1. vuex 作用:vue状态管理 安装:npm install vuex --save 开源地址:github 文档:https://vuex.vuejs.org/zh/ 2.…

SQL总结(快速参考)

SQL 语句 语句 语法 AND / OR SELECT column_name(s) FROM table_name WHERE condition AND|OR condition ALTER TABLE (add column) ALTER TABLE table_name ADD column_name datatype ALTER TABLE (drop column) ALTER TABLE table_name DROP COLUMN column_name AS (alias…

Vue -项目创建(rem适配项的设置)

3. 项目rem 配置 ####3.1 rem介绍 小米、京东、携程 m.mi.com/m.jd.com/m.ctrp.com 核心原理 1rem 当前 html 的fontSize也就是说 : rem是相当于根元素的字体大小// 使用div {width:2rem;height:2rem}// 媒体查询media (min-width:320px) {html {font-size : 20px}}media (mi…

c#基础知识梳理(四)

上期回顾 - https://www.cnblogs.com/liu-jinxin/p/10826971.html 一、类 当你定义一个类时,你定义了一个数据类型的蓝图。这实际上并没有定义任何的数据,但它定义了类的名称意味着什么,也就是说,类的对象由什么组成及在这个对象…

UIButton设置圆角和边框及边框颜色

UIButton *testButton [UIButton buttonWithType:UIButtonTypeSystem];[testButton setFrame:CGRectMake(self.view.frame.size.width/2, self.view.frame.size.height/2, 100,100)];[testButton setTitle:"获取屏幕尺寸" forState:UIControlStateNormal];[testButt…

Git 的介绍简介

使用 git 管理我们的项目并上传到码云 ##1. 本地管理 本地工作区 git add >暂存区 git commit > 仓库区 git status : 查看我们的状态 查看到很多红色的 (有修改的 有删除的 有添加的) git add . : 把当前所有文件添加到暂存区 git commit -m xxx 把代码从暂存区 提交…

【王俊杰de人工智能实战课】第7次作业2

Brief Guide 项目内容这个作业属于哪个课程北航人工智能实战课这个作业的要求在哪里第三次作业要求我在这个课程的目标是获得机器学习相关的完整项目与学习经验;通过与人工智能行业的大牛们聊天了解行业不同方向的发展以便进行职业规划;为转CS积累基础知…

让UITableView的section header view不悬停的方法

当 UITableView 的 style 属性设置为 Plain 时,这个tableview的section header在滚动时会默认悬停在界面顶端。取消这一特性的方法有两种: 将 style 设置为 Grouped 。这时所有的section header都会随着scrollview滚动了。不过 grouped 和 plain 的样式…

Promise 的基本使用 与 Ajax的jQuery封装

Promise 的基本使用 为了解决回调地狱问题,从而给出的解决办法: /*** Promise** 1. Promise 是 一个构造函数 new Vue()* 2. Promise() 里面有个参数, 参数就是一个回调 () > {}* 回调也有参数* resolve f 操作成功的时候调用resolve > …

个人冲刺9

1.昨天做了界面整体优化。 2.今天打算了解一下组成员的情况。 3.整体界面优化没有什么问题。转载于:https://www.cnblogs.com/Evak/p/10936840.html

iOS UITextField使用全攻略

//初始化textfield并设置位置及大小 UITextField *text [[UITextField alloc]initWithFrame:CGRectMake(20, 20, 130, 30)]; //设置边框样式,只有设置了才会显示边框样式 text.borderStyle UITextBorderStyleRoundedRect; typedef enum { UITextBorderStyleNone…

日期模糊查询

SELECT * FROM 表名 t WHERE(to_char(t.日期字段,yyyy-MM-dd hh24:mi:ss)like %2011%)转载于:https://www.cnblogs.com/macT/p/10865206.html

Uboot中start.S源码的指令级的详尽解析(转)

Uboot中start.S源码的指令级的详尽解析转载于:https://www.cnblogs.com/LittleTiger/p/10877516.html