iOS开发Swift学习

Swift学习 -- 字符串

2016-10-11  本文已影响53人  疯狂的小托马斯

一.字符串的介绍

二.与OC的区别

三.用法

1.定义

格式:
let 标识符 = "值"

var 标识符 = ”值“
例子:

//OC
NSString * str = @“疯狂的小托马斯”;

//Swift
let str = "疯狂的小托马斯"
var str1 = "疯狂的小托马斯"

2.遍历字符串

var str = "疯狂的小托马斯"
for c in str.characters{
    print(c)
}

3.拼接字符串

let  s = "疯狂"
let s1 = "的"
let s2 = "小托马斯"
let resultStr = s + s1 + s2
print(resultStr)
//打印结果:疯狂的小托马斯 
var s3 = "最牛de "
s3 += resultStr
print(s3)
//打印结果:最牛de疯狂的小托马斯
let age = 22
let name = "疯狂的小托马斯"
var str3 = "name = \(name),age = \(age)"
print(str3)
//打印结果:name = 疯狂的小托马斯,age = 22

4.字符串的格式化

-使用的方法与OC类似,只是表现形式不同。
例子:

//OC
NSString * time = [NSString stringWithFormat:@"%02d:%20d:%02d",9,9,13];
//Swift
var time = String(format: "%02d : %02d : %02d", arguments: [9, 9, 13])
print(time)
//打印结果:09 : 09 : 13

5.字符串的截取

 let s = "疯狂的小托马斯"
let h = (s as NSString).substringToIndex(2)
let m = (s as NSString).substringWithRange(NSMakeRange(2, 1))
let t = (s as NSString).substringFromIndex(3)
print(h)
print(m)
print(t)
/*打印结果:
疯狂
的
小托马斯
*/
let nameStr = "疯狂的小托马斯"
//创建Index
let indexS = nameStr.startIndex.advancedBy(2)
let indexEnd = nameStr.endIndex.advancedBy(-4)//endIndex注意要逆序,并且要负数
let range = Range<String.Index>(start: indexS, end: indexEnd)
//截取
let header = nameStr.substringToIndex(indexS)
let body = nameStr.substringWithRange(range)
let footer = nameStr.substringFromIndex(indexEnd)
print(header+body+footer)
//打印结果:疯狂的小托马斯
let index = nameStr.characters.indexOf("的") //根据字符查找index,最先遍历那个字符
//index = 2

如果大家有什么疑惑,或者文章有什么错误的地方,请大家留言。

上一篇 下一篇

猜你喜欢

热点阅读