声 明
本教程仅用于初学SWIFT同学使用,内容由本人(孤狼)学习过程中笔记编写,本教程使用SWIFT版本为2.0。本教程内容可以自由转载,但必须同时附带本声明,或注明出处。PAEA.CN版权所有。
Hello,大家好,欢迎回到和屌丝一起学SWIFT系列教程,上一节我们说到了基础运算符,大家都弄明白了嘛,其实不就是加减乘除加赋值嘛,嘿嘿,好了,这节我们来一起聊聊SWIFT里的字符串,这个可是经常用的哦.
[初始化字符串]
初始化字符串非常容易,直接设置一个变量或一个常量,然后对他进行赋值即可,注意的是,需要用双引号包含哦.
var a="我是一段淫荡的字符串";
print(a); //输出"我是一段淫荡的字符串"
[修改字符串]
修改一个字符串,直接对字符串的变量进行重新赋值即可.
var a="我是1";
a="我是2";
print(a); //输出"我是2"
[输出字符串中的每一个字符]
使用字符串的characters属性,可以读取字符串中的每一个单独的字符.
var a="abcdefg";
for i in a.characters{
print(i);
}
输出 "a","b","c","d","e","f","g"
[组合拼接]
字符串可以进行组合拼接处理,直接使用+号就可以完成组合,使用+=方法完成拼接,另外还可以使用append()方法把一个字符附加到字符串尾部,不过建议你别用,他会让你蛋疼.
var a = "你好,";
var b = "安德鲁先生";
var c = a+b;
print(a+b); //输出"你好,安德鲁先生"
print(c); //输出"你好,安德鲁先生"
a+="米希尔小姐";
print(a); //输出"你好,米希尔小姐"
[插值]
顾名思义,就是在字符串里插入值,各种各样的值,插值的方法是,使用\(变量或常量)的格式往一段字符串中插入值.值的一提的是,插值中的数字,是可以直接进行计算的.
var a="我爱北京天安门";
var b=10;
var c=1;
var d="\(b)月\(c)日,\(a)才怪,我5天后,\(b)月\(c+5)日才回去爱他";
print(d); //输出"10月1日,我爱北京天安门才怪,我5天后,10月6日才回去爱他"
[字符串长度]
很多时候,我们都会要知道一个字符串的长度是多少,我们可以使用characters属性中的count属性来的到这个值.
var a="如果我追到你,你就让我嘿嘿嘿.";
print(a.characters.count); //输出15
[字符串索引]
var a="123456789";
startIndex,字符串中的第一个索引位置
print(a.startIndex);
//输出0,对应的第一个位置
endIndex,字符串中的最后一个索引位置
print(a.endIndex);
//输出9,对应最后一个位置
这里我们可以看到这个字符串的索引范围是0-9,那让我们输出他中间的第一个字符.
print(a[a.startIndex]); //输出1,第一个索引位对应的值
通过使用predecessor()来获取上一个索引位,successor()来获取下一个索引位
print(a[a.startIndex.successor()]);
//输出2,对应第二个索引位
print(a[a.startIndex.successor().successor()]);
//输出3,对应第三个索引位
这样一个个找太麻烦,可以使用advancedBy()方法来直接获取指定偏移索引位
print(a[a.startIndex.advancedBy(1)]);
//输出2,startIndex获取第一位,偏移1位获取第2位
如果下标超出了索引位数,就会报错.
print(a[a.startIndex.predecessor()]);//输出 "(lldb)"
[插入和删除]
使用insert()方法可以在字符串的指定索引处插入一个字符.
var a="123456789";
a.insert("0", atIndex: a.startIndex.successor())
print(a); //输出"1023456789"
使用insertContentsOf()方法可以在字符串的指定索引处插入一个字符串
var a="123456789";
a.insertContentsOf("000".characters, at:a.startIndex);
print(a); //输出"000123456789"
使用removeAtIndex()方法删除字符串中指定索引处的字符
var a="123456789";
a.removeAtIndex(a.startIndex);
print(a); //输出"23456789"
使用removeRange()方法删除字符串中指定索引集处的字符串
var a="123456789";
var li=a.startIndex.advancedBy(3)..
[字符串比较]
字符串的比较可以使用等于(==)和不等于(!=)来进行.
var a="你好";
var b="你好!";
var c="你好!";
if(a==b){
print("a和b相等");
}else{
print("a和b不相等");
}
输出:a和b不相等
if(c==b){
print("c和b相等");
}else{
print("c和b不相等");
}
输出:c和b相等
好了,今天就到这里吧,我们下节课再见!Bye!