swift中字符与字符串(Character和String)
2015-02-11 14:33
246 查看
字符
字符串
Swift中的字符串不是指针,而是实际的值
/*
字符串常量可以包括下面这些特殊字符:
空字符\0,反斜杠\,制表符\t,换行符\n,回车符\r,双引号\”和单引号\’
单字节Unicode字符,\xnn,其中nn是两个十六进制数
双字节Unicode字符,\unnnn,其中nnnn是四个十六进制数
四字节Unicode字符,\Unnnnnnnn,其中nnnnnnnn是八个十六进制数
*/
字符串比较
Swift提供三种方法比较字符串的值:字符串相等,前缀相等,和后缀相等
字符串大小写
字符串编码
let money: Character = "¥" var face: Character = "��" println(money + face) // 结果为¥��
字符串
Swift中的字符串不是指针,而是实际的值
let someString = "ABC" var someStr = "ABC"
/*
字符串常量可以包括下面这些特殊字符:
空字符\0,反斜杠\,制表符\t,换行符\n,回车符\r,双引号\”和单引号\’
单字节Unicode字符,\xnn,其中nn是两个十六进制数
双字节Unicode字符,\unnnn,其中nnnn是四个十六进制数
四字节Unicode字符,\Unnnnnnnn,其中nnnnnnnn是八个十六进制数
*/
let words = " \" " let dollarSign = "\x24" //$ let blackHeart = "\u2665" //♥ let sparkHeart = "\U0001F496" //��
//初始化空的字符串 var emptyString = "" var anotherEmptyString = String() //检查字符串是否为空 if emptyString.isEmpty { println("Nothing to see here") } //变长字符串 var variableString = "Horse" variableString += " and carriage" println(variableString) let constantString = "" //constantString += "123" //错误, constantString 是常量 //4.字符计数 //在Swift里面,使用countElements来计算一个字符串中的字符的数量 let countStr = "wo love iOS and swift" println("countStr count is \(countElements(countStr))") /* 注意:通过 countElements 返回的字符数量并不总是与包含相同字符的 NSString 的 length 属性相同。NSString 的 length 属性是基于利用 UTF-16 编码的数目,而不是基于 Unicode 字符 //Swift 中的字符在一个字符串中 并不一定占用相同的内存空间,需使用全局函数countElements计算一个字符串中字符的数量 */ //5.组合字符串与字符 let string1 = "hello" let string2 = " there" let character1: Character = "!" let character2: Character = "?" let stringPlusCharacter = string1 + character1 // hellohello let stringPlusString = string1 + string2 // hello there let characterPlusString = character1 + string1 // !hello let characterPlusCharacter = character1 + character2 // !? //6.字符串格式化 let sum = 3 println("sum is \(sum), sum double is \(Double(sum) * 2.5)")
字符串比较
Swift提供三种方法比较字符串的值:字符串相等,前缀相等,和后缀相等
//1字符串相等 let someStr1 = "ABC" let someStr2 = "ABC" if someStr1 == someStr2 { println("someStr1 == someStr2") } //2前缀相等 let animals = ["食肉:老虎", "食肉:狮子", "食草:牛群", "食草:羊群", "食草:马群"] var aCount = 0 var bCount = 0 for animal in animals { if animal.hasPrefix("食肉"){ //前缀相等 ++aCount } if animal.hasSuffix("群"){ //后缀相等 ++bCount } } println("这有\(aCount)头食肉动物") println("这有\(bCount)群食草动物")
字符串大小写
let normal = "Could you help me, please?" let shouty = normal.uppercaseString //大写 let whispered = normal.lowercaseString //小写
字符串编码
let dogString = "Dog!��" //utf-8 for codeUnit in dogString.utf8 { print("\(codeUnit) ") // 68 111 103 33 240 159 144 182 } print("\n") //utf-16 for codeUnit in dogString.utf16 { print("\(codeUnit) ") // 68 111 103 33 55357 56374 } print("\n") //unicode 标量 for scalar in dogString.unicodeScalars { // print("\(scalar)") print("\(scalar.value) ") // 68 111 103 33 128054 }
相关文章推荐
- swift中character字符与string字符串的使用
- Swift 字符串字符索引String.charAt(index:Int)
- 387.leetcode First Unique Character in a String(easy)[统计字符串字符次数]
- 详解Swift中的Characters字符类型与String字符串类型
- [LeetCode] First Unique Character in a String 字符串第一个不同字符
- First Unique Character in a String(字符串中的第一个唯一字符)
- Delphi 的字符及字符串[3] - String 中的秘密
- Delphi 的字符及字符串[1] - string、AnsiString、WideString、String[n]、ShortString
- Delphi 的字符及字符串[3] - String 中的秘密
- 【原创】打印一个string 字符串中重复字符的次数
- js javascript 判断字符串是否包含某字符串,String对象中查找子字符
- C++ 字符(char)与字符串(string)操作
- 《C++标准函数库》中说的有三个函数可以将字符串的内容转换为字符数组和C—string (CString、char*、String三种类型互换)
- String字符串按多个字符Split方法
- string.ToCharArray() 装字符串的每个字符存入数组
- 在java中除去字符串(String)中的换行字符(\r \n \t)
- 问题1:java中没有实现这种“byte a = 0xB2 --> String b = “B2””转换的简单实现需要自己实现。 答:自己编写的转换函数,思路将byte的高低4位分开,分别转换为对应的字符然后合成返回的字符串。 java 代码 1.
- Delphi 的字符及字符串[1] - string、AnsiString、WideString、String[n]、ShortString
- js 判断字符串是否包含某字符串,String对象中查找子字符,indexOf
- Algorithm backup ---- Compare occurences of each character of two strings(比较两个字符串每个字符出现频率是否一样)