IOS学习笔记十六(NSString和NSMutableString)

1、NSString和NSMutableString

NSString是不变字符串类,有点像java里面的String,NSMutableString是可变字符串类,有点类似java里面的StringBuffer

 


2、测试demo

int main(int argc, char * argv[]) {@autoreleasepool {unichar data[6] = {97, 98, 100, 101, 102, 103};NSString *str = [[NSString alloc] initWithCharacters:data length:6];NSLog(@"str is %@", str);char *cstr = "chenyu";NSString *str2 = [NSString stringWithUTF8String:cstr];NSLog(@"str2 is %@", str2);NSString *str3 = @"chenyu";NSString *name = @"陈喻";str3 = [str3 stringByAppendingString:@"chenyu"];NSLog(@"str3 is %@", str3);const char *cstr1 = [str3 UTF8String];NSLog(@"cstr1 is %s", cstr1);str3 = [str3 stringByAppendingFormat:@"hello %@ hello", name];NSLog(@"str3 is %@", str3);NSLog(@"str3 length is %lu", [str3 length]);NSString *s1 = [str3 substringToIndex:10];NSLog(@"s1 is %@", s1);NSString *s2 = [str3 substringFromIndex:5];NSLog(@"s2 is %@", s2);NSString *s3 = [str3 substringWithRange:NSMakeRange(5,10)];NSLog(@"s3 is %@", s3);NSRange pos = [str3 rangeOfString:@"陈喻"];NSLog(@"陈喻在str3中开始的位置:%ld,长度为%ld", pos.location, pos.length);str3 = [str3 uppercaseString];NSLog(@"str3 is %@", str3);NSMutableString *tstr = [NSMutableString stringWithString:@"hello"];[tstr appendString:@"chenyu"];NSLog(@"tstr is %@", tstr);[tstr appendFormat:@"hello word %@", @"chengongyu"];NSLog(@"tstr is %@", tstr);[tstr insertString:@"hello" atIndex:6];NSLog(@"tstr is %@", tstr);[tstr deleteCharactersInRange:NSMakeRange(6, 9)];NSLog(@"tstr is %@", tstr);[tstr replaceCharactersInRange:NSMakeRange(3, 6) withString:@"objectobject"];NSLog(@"tstr is %@", tstr);}
}

 

 

 

 

 

 

3、运行结果

str is abdefg
str2 is chenyu
str3 is chenyuchenyu
cstr1 is chenyuchenyu
str3 is chenyuchenyuhello 陈喻 hello
str3 length is 26
s1 is chenyuchen
s2 is uchenyuhello 陈喻 hello
s3 is uchenyuhel
陈喻在str3中开始的位置:18,长度为2
str3 is CHENYUCHENYUHELLO 陈喻 HELLO
tstr is hellochenyu
tstr is hellochenyuhello word chengongyu
tstr is hellochellohenyuhello word chengongyu
tstr is hellocuhello word chengongyu
tstr is helobjectobjectllo word chengongyu

 

 

 

 

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

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

相关文章

产品经理书籍

《结网》 part1 做产品的几个要点:出处、目标、 壁垒、 受益人群、 商业模式、 平台现金牛、战略部署。 一个概念是否可以被有效执行出来比概念的本事更重要 要有坚定的决心更要有合理的发展路线 part2 传说中的风投:(投资你的个人品质和你对…

界面连接数据库

1、获取本机的SQL Server服务器名 private void Form2_Load(object sender, EventArgs e){listBox1.Items.Clear();SQLDMO.Application SQLServer = new SQLDMO.Application();SQLDMO.NameList strServer = SQLServer.ListAvailableSQLServers();if (strServer.Count > 0){f…

Xamarin效果第二十篇之GIS中加载三维白模

在前面文章中简单玩了玩GIS的基本操作、Mark相关、AR和测距,今天再次分享一下N年前就像玩耍的效果;啥也不说了都在效果里:再来看看手机端的效果:1、关于效果我也是偶然见看到了别人实现:https://blog.csdn.net/arcgis_all/article/details/769991042、关于实现就是在三维场景图…

visa虚拟卡生成器_虚拟卡有哪些功能?赶紧了解一下

现在很多人都会有机会出国,或者是直接在国外生活,他们时不时的会到国内办理一些事情,而这个时候为了确保信用卡在使用的时候安全,有些人就会申请使用虚拟信用卡,这样不但可以解决跨国支付的麻烦,从而确保在…

35个Java代码性能优化总结

代码优化的目标是: 1、减小代码的体积 2、提高代码运行的效率 代码优化细节: 1、尽量指定类、方法的final修饰符 带有final修饰符的类是不可派生的。为类指定final修饰符可以让类不可以被继承,为方法指定final修饰符可以让方法不可以被重写。…

android编程绘图,Android编程绘图操作之弧形绘制方法示例

本文实例讲述了Android编程绘图操作之弧形绘制方法。分享给大家供大家参考,具体如下:/*** 绘制弧形图案* description:* author ldm* date 2016-4-25 下午4:37:01*/public class ArcsActivity extends Activity {Overrideprotected void onCr…

JS多个对象添加到一个对象中

var obj1 {"qq":10}; var obj2{"mm":2,"nn":3}; var obj3{"xx":1,"yy":5}; obj1.field1 obj2; obj1.field2 obj3; console.log(obj1)转载于:https://www.cnblogs.com/thiaoqueen/p/7111697.html

Caffe cuDNN

Ref: http://jetsonhacks.com/2015/01/20/nvidia-jetson-tk1-cudnn-install-caffe-example/ 转载于:https://www.cnblogs.com/nn0p/p/4351026.html

linux平台之如何查看svn账号

1、平台 在ubuntu 2、如何查看svn账号 1)、 到svn.simple目录 cd ~/.subversion/auth/svn.simple 2)、然后在svn.simple目录下查看文件 这个目录很多文件,我们随便cat/vim一下就可以看到了

C#将dataGridView中显示的数据导出到Excel(大数据量超实用版)

开发中很多情况下需要将dataGridView控件中显示的数据结果以Excel或者Word的形式导出来,本例就来实现这个功能。由于从数据库中查找出某些数据列可能没必要显示出来,在dataGridView中将对应的列隐藏了,这时导出时就会将隐藏的列导出来,显然不是我们所预期的。做法是先将dat…

BeetleX实现MessagePack和Protobuf消息控制器调用websocket服务详解

最近有用户问如何使用BeetleX封装一个基于Protobuf格式的websocket服务并支持控制器调用;其实BeetleX.FastHttpApi是支持Websocket服务和自定义数据格式的,但需要对组件有一定了解的情况才能进行扩展;接下来通过封装一个支持Protobuf和Messag…

vue 获取url地址的参数_2020年 vue常见面试问题总结(干货)!

1.什么是mvvm模式,谈谈你的理解? MVVM - Model View ViewModel,数据,视图,视图模型view 可以通过 事件绑定 的方式影响 model,model 可以通过 数据绑定 的形式影响到view,viewModel是把 model 和…

CSS 定位之绝对与相对

static,relative,absolute,fixed含义 static(静态定位):元素框正常生成。块级元素生成一个矩形框,作为文档流的的一部分,行内元素则会常见一个或多个行框,至于其父元素中。默认值。没有定位,元素出现在正常的流中(忽略…

理解云计算备份与灾难恢复

如今,云计算和用户生态系统有一个新的转变,IT的转化创造了一个独特的“数据需求”环境。这意味着有放在这些工作负荷的详细的信息工作和更大的恢复需求。IT管理人员负责管理他们的备份系统,并必须准备好他们的灾难恢复策略。适当的恢复方法是…

SQL Server CLR 集成简介

公共语言运行库 (CLR) 是 Microsoft .NET Framework 的核心,为所有 .NET Framework 代码提供执行环境。 在 CLR 中运行的代码称为托管代码。 CLR 提供执行程序所需的各种函数和服务,包括实时 (JIT) 编译、分配和管理内存、强制类型安全性、异常处理、线程管理和安全性。 …

安卓 收起软件盘

public static void collapseSoftInputMethod(Context context, View v) {if (v ! null) {InputMethodManager imm (InputMethodManager) context.getSystemService(Context.INPUT_METHOD_SERVICE);imm.hideSoftInputFromWindow(v.getWindowToken(), 0);}}传入上下文&#xff…

IOS学习笔记之十七 (NSDate、NSDateFormatter、NSCalendar、NSDateComponents、NSTimer)

1、NSDate 时间与日期的初始化,主要有 [NSDate date]; 2、NSDateFormatter 主要用于NSString和Date之间相互转化//NSDate转NSStringstringFromDate:dt//NSString转NSDatedateFromString 3、NSCalendar和NSDateComponents Date打印出具体时间的年月日和把年月日转化为Date4、N…

android studio adil位置,在Android Studio 中正确使用adil ”绝对经典“

今天调用远程服务中遇到了一个问题,哎,调了2个小时,后来终于解决,总结来看还是对新的Android Studio 不够熟悉。那么。。。。就可以睡觉啦!!!在Android Studio中使用进程通信机制adil时一定要注…

[第二篇]如何在ASP.Net Core的生产环境中使用OAuth保护swagger ui

在我上篇文章如何在ASP.Net Core的生产环境中保护swagger ui中,我们讨论了如何使用基本身份验证来保护 swagger ui。使用 OAuth 2.0 和 OpenIdConnect 进行保护随着应用程序越来越多地使用 OAuth 和 OpenIdConnect,应用程序很有可能使用 OAuth 和 OpenID…

python opencv 图像切割_【OpenCV+Python】图像的基本操作与算术运算

图像的基本操作在上个教程中,我们介绍了使用鼠标画笔的功能。本次教程,我们将要谈及OpenCV图像处理的基本操作。本次教程的所有操作基本上都和Numpy相关,而不是与OpenCV相关。要使用OpenCV编写更好的优化代码,需要Numpy的丰富知识…