// 字符串字面量是由双引号 ("") 包裹着的具有固定顺序的文本字符集
var someString = "Some String";
//转义字符\0(空字符)、\\(反斜线)、\t(水平制表符)、\n(换行符)、\r(回车符)、\"(双引号)、\'(单引号)。
//Unicode 标量,写成\u{n}(u为小写),其中n为任意的一到八位十六进制数
var drem = "赚钱养梦\n\r 梦想不死"
var drem_1 = "\u{1f496}"
// 初始化空字符串
var emptyString = "";
var autheEmptyString = String();
// 检查字符串是否为空
if emptyString.isEmpty {
// 为空
println("空字符串");
}
// 字符串可变性
var variableString = "Hello"
variableString += "Word";
//Swift 的String类型表示特定序列的Character(字符) 类型值的集合。 每一个字符值代表一个 Unicode 字符。 您可利用for-in循环来遍历字符串中的每一个字符
for name in "Enda" {
println(name)
}
// 另外,通过标明一个Character类型注解并通过字符字面量进行赋值,可以建立一个独立的字符常量或变量
var yenSign:Character = "&";
// 计算字符串数量
// 通过调用全局count(_:)函数,并将字符串作为参数进行传递,可以获取该字符串的字符数量
var EndaName = "字符串算几个";
count(EndaName) // 6
// 字符串连接
// 可以使用 + 号和 += 连接字符串
var string1 = "Hi";
var string2 = ",";
var say = string1 + string2;
var se = "WA";
se += say;
// 使用 append 追加到尾部
var welcome = "test";
let exclamationMark: Character = "!"
welcome.append(exclamationMark)
// 字符串插值
// 字符串插值是一种构建新字符串的方式,可以在其中包含常量、变量、字面量和表达式。 您插入的字符串字面量的每一项都被包裹在以反斜线为前缀的圆括号中
let multiplier = 3
var message = "\(multiplier) 乘以 2.5 是 \(Double(multiplier) * 2.5)"
// 前缀/后缀相等
// 通过调用字符串的hasPrefix/hasSuffix方法来检查字符串是否拥有特定前缀/后缀。 两个方法均需要以字符串作为参数传入并传出Boolean值。 两个方法均执行基本字符串和前缀/后缀字符串之间逐个字符的比较操作
let iphone = [
"iphone 4:300",
"iphone 4s:1000",
"iphone 5:2000",
"iphone 5s:2000",
"iphone 5c:2000",
];
var strCount = 0;
for phone in iphone {
if phone.hasPrefix("iphone 4"){
++strCount
}
}
println("在 iphone 家族里面,iphone 4 打头的有\(strCount)个")
strCount = 0;
for phone in iphone{
if phone.hasSuffix("2000"){
++strCount;
}
}
println("在 iphone 家族中,2000块的有\(strCount) 个")
// 大写和小写字符串
// 可以通过字符串的uppercaseString和lowercaseString属性来访问大写/小写版本的字符串
var esay = "Hi,My Name Is Esay";
// 大写
esay.uppercaseString
// 小写
esay.lowercaseString