/*字符串的常用方法*/

//1.通常用来把一些基本数据类型和字符串进行拼接

int a = ;
float b = 9527.0;
NSString *string = [NSString stringWithFormat:@"%d%.1f",a,b];
NSLog(@"%@",string);//95279527.0

//2.字符串的长度(空格也会计算在内)

NSString *string = @"今晚打老虎";
//NSLog(@"%lu",[string length]);
NSLog(@"%lu",string.length);//
NSString *string = @"今 晚 打 老 虎";
NSLog(@"%lu",string.length);//

//3.取子串

//3.1取后面 从index(index是下标的意思)开始取到最后(包含index)

NSString *string = @"今晚打老虎";
NSString *string2 = [string substringFromIndex:];//“今”下标为0,“打”下标为2,从下标为2的“打”开始取到最后面,即sting2 = @“打老虎”
NSLog(@"%@",string2);//打老虎

//3.2取前面 从 index为0开始取,到index止(不包含index)

NSString *string = @"今晚打老虎";
NSString *string2 = [string substringToIndex:];//从下标为0的“今”开始取,到下标为2的“打”的前一个(“晚”)止,即sting2 = @“今晚”
NSLog(@"%@",string2);//今晚

//3.3取中间 从哪个位置开始取,取多长

//创建一个NSRange

NSString *string = @"今晚打老虎";
NSRange rang = NSMakeRange(, );//从下标为2开始取,取两个(rang为结构体不需加*)
NSString *string2 = [string substringWithRange:rang];
NSLog(@"%@",string2);//打老

//4.判断一个字符串是不是以...开头或者以...结尾

NSString *string = @"今晚打老虎";
//判断是不是以“今”开头
if ([string hasPrefix:@"今"]) {
NSLog(@"是");//是
}else{
NSLog(@"不是");
}
//判断是不是以“老”结尾
if ([string hasSuffix:@"老"]) {
NSLog(@"是");
}else{
NSLog(@"不是");//不是
}

//5.字符串的拼接

NSString *string = @"赵日天";
NSString *string2 = @"今晚打老虎";
NSString *string3 = [string stringByAppendingString:string2];
NSLog(@"%@",string3);//赵日天今晚打老虎

//6.判断两个字符串是否相等

NSString *string = @"赵日天";
NSString *string2 = @"叶良辰";
if ([string isEqualToString:string2]) {
NSLog(@"相等");
}else{
NSLog(@"不相等");//不相等
}

//7.字符串的替换

NSString *string = @"我赵日天不服";
NSString *string2 = [string stringByReplacingOccurrencesOfString:@"不服" withString:@"服了"];//把“不服”替换成"服了"
NSLog(@"%@",string2);//我赵日天服了

//8.判断一个字符串中是否包含...

NSString *string = @"我赵日天不服";
NSRange range = [string rangeOfString:@"日"];
if (range.length > ) {
NSLog(@"包含");//包含
}else{
NSLog(@"不包含");
}

//9.字符串的分割

NSString *string = @"MDZZ";
NSArray *array = [string componentsSeparatedByString:@"D"];
NSLog(@"%@",array);//(M,ZZ)
NSLog(@"%@",array[]);//M
NSLog(@"%@",array[]);//ZZ

//总结:

//NSString是不可变字符串,方法都有返回值,返回值往往是字符串,也就是新生成的字符串
/*
字符串常用方法
求长度 length
判断开头结尾 hasPrefix hasSuffix
拼接 stringByAppendingString
取子串 substring...
判断是否相等 isEqualToString
截取 分割 componentsSeparatedByString
替换 stringByReplacingOccurrencesOfString
判断是否包含  rangeOfString
*/

不可变字符串NSString的更多相关文章

  1. OC—不可变字符串NSString

  2. OC字符串NSString

    ========================== 面向对象编程进阶和字符串 ========================== Δ一.类的设计模式—单例 [单例]程序允许过程中,有且仅有一块内存 ...

  3. Objective-C: 字符串NSString与NSMutableString

    字符串算是OC中非常重要和常用的一部分内容,OC中的字符串与我之前在学习C,C++,Java中的字符串有一定的不同,它非常类似于C++中容器的概念,但用法却与之还是有很大的不同,也许是因为OC的语法就 ...

  4. 14.Object-C--浅谈Foundation框架字符串NSString 与NSMutableString

    OC的字符串时经常使用到的,今天我对于OC字符串做一个简单的总结,如果有错误之处,麻烦留言指正.感谢! NSString是一个不可变长度的字符串对象.表示它初始化以后,你不能改变该变量所分配的内存中的 ...

  5. IOS 学习笔记 2015-03-24 OC-API-不可变字符串

    大部分是模仿// // main.m // OC-API-不可变字符串 // // Created by wangtouwang on 15/3/25. // Copyright (c) 2015年 ...

  6. OC之字符串 NSString与NSMutableString

    一.NSString 不可变字符串的操作1)将字符串常量对象直接赋值给字符串引用 NSString *str1=@"hello"; 字符串对象的输出格式:NSLog(@" ...

  7. oc基础 不可变字符串的创建和使用

    oc基础  不可变字符串的创建和使用 简介:下面都是字符串基本用法. 1.字符串的创建 //创建oc常量字符串 NSString *str=@"hello world!"; NSL ...

  8. iOS中的字符串NSString

    创建一个字符串对象: NSstring * str1 = @"hello world"; NSString * str = [[NSString alloc]initWithStr ...

  9. iOS不可变字符串的所有操作

    可以直接复制代码即可运行看看结果,方便理解 //NSString //OC字符串不能用printf输出 //但是遗憾的是OC没有一个从终端读取数据的方式,需要使用scanf读取C字符串然后转换成OC的 ...

随机推荐

  1. nyoj 下三角矩阵

    Problem A 下三角矩阵 时间限制:1000 ms  |  内存限制:65535 KB 描述 给定一个由0和1组成的矩阵.只允许交换相邻的两行,要把矩阵转化成下三角矩阵(主对角线上方的元素都是0 ...

  2. java.lang.NoSuchFieldError 异常原因

    一般都是因为 class 或 jar 包重复 导致的 , 也有可能是编译器的问题. 我碰到的问题是,在项目api 接口jar包里定义了一个Config.java,然后在业务层service 项目 的相 ...

  3. 最短JavaScript判断是否为IE6、IE的方法

    常用的 JavaScript 检测浏览器为 IE 是哪个版本的代码,包括是否是最人极端厌恶的 ie6 识别与检测. var isIE=!!window.ActiveXObject; var isIE6 ...

  4. samtools常用命令详解

    samtools的说明文档:http://samtools.sourceforge.net/samtools.shtmlsamtools是一个用于操作sam和bam文件的工具合集.包含有许多命令.以下 ...

  5. linux安装wine

    1.添加PPA sudo add-apt-repository ppa:ubuntu-wine/ppa 2.更新列表 sudo apt-get update 3.安装Wine sudo apt-get ...

  6. testng教程之testng.xml的配置和使用,以及参数传递

    昨天学习了一下testng基础教程,http://www.cnblogs.com/tobecrazy/p/4579414.html 昨天主要学习的是testng 的annotation基本用法和生命周 ...

  7. MySQL Binlog Mixed模式记录成Row格式

    背景: 一个简单的主从结构,主的binlog format是Mixed模式,在执行一条简单的导入语句时,通过mysqlbinlog导出发现记录的Binlog全部变成了Row的格式(明明设置的是Mixe ...

  8. Deep Learning入门视频(上)_一层/两层神经网络code

    关于在51CTO上的深度学习入门课程视频(9)中的code进行解释与总结: (1)单层神经网络: #coding:cp936 #建立单层神经网络,训练四个样本, import numpy as np ...

  9. String字符串去掉最后一个","号的几种方式

    String a = "struts-default.xml,struts-plugin.xml,struts.xml"; String[] bStrings = a.split( ...

  10. .NET LINQ 限定符操作

    限定符操作      限定符运算返回一个 Boolean 值,该值指示序列中是否有一些元素满足条件或是否所有元素都满足条件. 方法 方法名 说明 C# 查询表达式语法 Visual Basic 查询表 ...