您的位置:时时app平台注册网站 > 编程知识 > 字符串和字符

字符串和字符

2019-10-12 09:10

 

<a name = "字符串的值类型"></a>字符串的值类型

Swift 的String类型是值类型。 如果您创建了一个新的字符串,那么当其进行常量、变量赋值操作或在函数/方法中传递时,会进行值拷贝。 任何情况下,都会对已有字符串值创建新副本,并对该新副本进行传递或赋值操作。

注意

与 Cocoa 中的NSString不同,当您在 Cocoa 中创建了一个NSString实例,并将其传递给一个函数/方法,或者赋值给一个变量,您传递或赋值的是该NSString实例的一个引用,除非您特别要求进行值拷贝,否则字符串不会生成新的副本来进行赋值操作。

在实际编译时,Swift 编译器会优化字符串的使用,使实际的复制只发生在绝对必要的情况下,这意味着您将字符串作为值类型的同时可以获得极高的性能。

 ②字符串运算符

前缀/后缀相等

通过调用字符串的hasPrefix/hasSuffix方法来检查字符串是否拥有特定前缀/后缀。 两个方法均需要以字符串作为参数传入并传出Boolean值。 两个方法均执行基本字符串和前缀/后缀字符串之间逐个字符的比较操作。

④转义字符

字符串相等

如果两个字符串以同一顺序包含完全相同的字符,则认为两者字符串相等:

图片 1

<a name = "Unicode"></a> Unicode

  • UTF-8 代码单元集合 (利用字符串的utf8属性进行访问)
  • UTF-16 代码单元集合 (利用字符串的utf16属性进行访问)
  • 21位的 Unicode 标量值集合 (利用字符串的unicodeScalars属性进行访问)

3、使用比较运算符

字符串和字符

本节内容包括:

  • 字符串字面量
  • 初始化空字符串
  • 字符串可变性
  • 字符串的值类型
  • 使用字符
  • 计算字符数量
  • 连接字符串和字符
  • 字符串插值
  • 比较字符串
  • 字符串大小写
  • Unicode

 

<a name = "字符串大小写"></a>字符串大小写

您可以通过字符串的uppercaseStringlowercaseString属性来访问大写/小写版本的字符串。

图片 2

<a name = "字符串字面量"></a>字符串字面量

字符串字面量是由双引号 ("") 包裹着的具有固定顺序的文本字符集。

let someString = "Some string literal value"

字符串字面量可以包含以下特殊字符:

  • 转义字符\0(空字符)、\(反斜线)、t(水平制表符)、n(换行符)、r(回车符)、"(双引号)、'(单引号)。
  • Unicode 标量,写成u{n}(u为小写),其中n为任意的一到八位十六进制数。

len():显示字符串的长度,返回数字整型。可以进行长度的比较。

<a name = "初始化空字符串"></a>初始化空字符串

var emptyString = ""               // 空字符串字面量
var anotherEmptyString = String()  // 初始化 String 实例

1、比较字符串是否相同:

<a name = "字符串插值"></a>字符串插值

字符串插值是一种构建新字符串的方式,可以在其中包含常量、变量、字面量和表达式。 您插入的字符串字面量的每一项都被包裹在以反斜线为前缀的圆括号中:

let multiplier = 3
let message = "(multiplier) 乘以 2.5 是 (Double(multiplier) * 2.5)"
// message 是 "3 乘以 2.5 是 7.5"

注意:

插值字符串中写在括号中的表达式不能包含非转义双引号 (") 和反斜杠 (),并且不能包含回车或换行符。

>、<、> = 、< =、比较的规则为:从第一个字符开始比较,排序在前边的字母为小,当一个字符串全部字符和另一个字符串的前部分字符相同时,长度长的字符串为大。

<a name = "使用字符"></a>使用字符

Swift 的String类型表示特定序列的Character(字符) 类型值的集合。 每一个字符值代表一个 Unicode 字符。 您可利用for-in循环来遍历字符串中的每一个字符:

for character in "Dog!
	  

本文由时时app平台注册网站发布于编程知识,转载请注明出处:字符串和字符

关键词: