Objective-C中NSString和NSMutableString的基本用法
int main(int argc, const char * argv[])
{ @autoreleasepool { //----------------NSString-----------------------------
NSString *str1 = @"这是一个字符串常量";
NSLog(@"str1 = %@",str1);
//创建一个空字符串
NSString *str2 = [[NSString alloc]init];
NSString *str3 = [NSString string];
NSLog(@"str2 = %@",str2);
NSLog(@"str3 = %@",str3);
//快速创建一个字符串
NSString *str4 = [[NSString alloc]initWithString:str1];
NSString *str5 = [NSString stringWithString:str1];
NSLog(@"str4 = %@",str4);
NSLog(@"str5 = %@",str5);
//创建一个格式化字符串
NSString *str6 = [[NSString alloc]initWithFormat:@"%d",10];
NSString *str7 = [NSString stringWithFormat:@"%.2f",10.8099887];
NSLog(@"str6 = %@",str6);
NSLog(@"str7 = %@",str7); //比较两个字符串内容是否相等
if ([str6 isEqualToString:str7]) {
NSLog(@"str6 is EqualToString str7");
}else{
NSLog(@"str6 is not EqualToString str7");
} //转换为基本数据类型
NSString *str8 = @"3";
float f1 = [str8 floatValue];
NSLog(@"str8 = %.2f",f1); //字符串拆分为数组
NSString *str9 = @"命 运 就 算 颠 沛 流 离";
NSArray *array = [str9 componentsSeparatedByString:@" "];
NSLog(@"array = %@",array);
NSLog(@"array[0] = %@",array[0]); //截取字符串
NSString *str10 = @"123456789";
NSString *subStr1 = [str10 substringToIndex:4];
NSString *subStr2 = [str10 substringFromIndex:6];
NSLog(@"subStr1 = %@",subStr1);
NSLog(@"subStr2 = %@",subStr2); NSRange range = {4,2};
NSString *subStr3 = [str10 substringWithRange:range];
NSLog(@"subStr3 = %@",subStr3); //拼接字符串
NSString *str11 = @"123";
NSString *str12 = @"456";
NSString *appStr1 = [[NSString alloc]initWithFormat:@"%@%@",str11,str12];
NSString *appStr2 = [str11 stringByAppendingFormat:@"%@",str12];
NSString *appStr3 = [str11 stringByAppendingString:str12];
NSLog(@"appStr1 = %@",appStr1);
NSLog(@"appStr2 = %@",appStr2);
NSLog(@"appStr3 = %@",appStr3); //查找字符串
NSString *str13 = @"qweradsfzxcvqazxsw";
NSRange range1 = [str13 rangeOfString:@"dsfzx"];
NSLog(@"%@",NSStringFromRange(range1));
NSLog(@"%d",range1.location);
if (range1.location != NSNotFound) {
NSLog(@"str found");
}else{
NSLog(@"str not found");
} /*------------NSMutableString 可变字符串-----------------*/
//插入
NSMutableString *mStr1 = [[NSMutableString alloc] initWithFormat:@"abcd"];
[mStr1 insertString:@"defg" atIndex:4]; //注意:此处为在源字符串上修改,并未生成新的字符串
NSLog(@"mStr1 = %@",mStr1); //替换
[mStr1 replaceCharactersInRange:NSMakeRange(4, 4) withString:@"1234"];
NSLog(@"%@",mStr1); //删除
[mStr1 deleteCharactersInRange:NSMakeRange(4, 4)];
NSLog(@"%@",mStr1);
}
return 0;
}
Objective-C中NSString和NSMutableString的基本用法的更多相关文章
- Objective - C 中NSString (字符串)与C中的字符串转换问题
NSString是一个常用的类,NSString是原生支持unicode C中的字符串 比如char * a = "hello world"; 是utf8类型的, char* d ...
- bjective-C 中核心处理字符串的类是 NSString 与 NSMutableString
Objective-C 中核心处理字符串的类是 NSString 与 NSMutableString ,这两个类最大的区别就是NSString 创建赋值以后该字符串的内容与长度不能在动态的更改,除非重 ...
- 关于NSString和NSMutableString的相关用法和基本介绍
Objective-C 中核心处理字符串的类是 NSString 与 NSMutableString ,这两个类最大的区别就是NSString 创建赋值以后该字符串的内容与长度不能在动态的更改,除非重 ...
- objective C中的字符串NSStirng常用操作
objective C中的字符串操作 在OC中创建字符串时,一般不使用C的方法,因为C将字符串作为字符数组,所以在操作时会有很多不方便的地方,在Cocoa中NSString集成的一些方法,可以很方便的 ...
- Foundation框架-NSString和NSMutableString
可变与不可变的字符串 --1-- Foundation框架介绍 1.1 框架介绍 --2-- NSString 2.1 NSString介绍及使用 2.2 NSString创建方式 2.3 从文件中 ...
- NSString和NSMutableString常用方法+NSArray常用代码 (转)
常见的NSString和NSMutableString方法: NSString方法: [plain] view plaincopy +(id) stringWithContentsOfFile:p ...
- iOS基础-NSString及NSMutableString剖析
一.NSString头文件 NSString : NSObject 实现协议: NSCopying/NSMutableCopying/NSSecureCoding 类别: //扩展类别 NSStrin ...
- OC第二节 —— NSString和NSMutableString
1.为什么需要NSString对象 答:在OC中创建字符串时,一般不使用C的方法, 因为C将字符串作为字符数组,所以在操作时会有很多不方便的地方, 在Cocoa中NSStri ...
- NSString和NSMutableString的创建及其一些常用方法
NSString和NSMutableString都是对象类型,是NSObject的子类.NSString是不可变字符串,NSMutableString是可变字符串 一.NSString的创建 1.创建 ...
随机推荐
- c语言验证哥德巴赫猜想(从4开始 一个偶数由两个质数之和)
#include <stdio.h> #include <stdlib.h> #include <math.h> int isit(int num) { int i ...
- Java学习之Iterator(迭代器)的一般用法
迭代器(Iterator) 迭代器是一种设计模式,它是一个对象,它可以遍历并选择序列中的对象,而开发人员不需要了解该序列的底层结构.迭代器通常被称为“轻量级”对象,因为创建它的代价小. Java中的I ...
- Map的内容按字母顺序排序
map有自带的排序功能,但需要重写排序方法,代码如下: package coreJava.com.shindo.corejava.map; import java.util.ArrayList; im ...
- [RxJS] Adding Conditional Logic with Filter
Often you only want values to proceed through your stream if they meet certain criteria, just as if ...
- neural style论文解读
相关的代码都在Github上,请参见我的Github,https://github.com/lijingpeng/deep-learning-notes 敬请多多关注哈~~~ 概述 在艺术领域,艺术家 ...
- Android字数限制的EditText实现方案研究
在应用开发中,有时需要实现有字数限制的EditText,首先来分析下市面上存在的类似实现方案吧,好有个感性的认识. [方案一:腾讯微博] 每个中文字符算一个字数,每两个英文字符算一个字数,当用户输入内 ...
- Fantageek翻译系列之《使用Autolayout显示变化高度的UITableViewCell》
这篇博客主要在于,解释如何通过仅仅使用Autolayout很很少的代码,显示高度不同的Cell.虽然标题说的是TableView,但是CollectionView同样适合.但是,这种方法只使用iOS7 ...
- java开发之基础篇2
一.java开发环境的搭建 下载和安装jdk.版本自己看着办! 1 JAVA_HOME C:\Program Files\Java\jdk1.7.0_25 2 path C:\Program File ...
- winscp连接vmware ubuntu
winscp连接vmware ubuntu,因为第一次安装在虚拟机上的ubuntu是没有ssh服务的,不能在windows上通过工具进行连接,所以需要以下步骤进行ssh配置 1:检查ssh状态 ...
- C#中弹出新窗口
1.在主窗体程序中定义对应别的窗体的对象 Form_a_class form1 = Form_a_class test_delegate(); 2.调用显示 form1.ShowDialog();