Swift文件Chapter 3 字串和字元

2022-09-19 12:51:09 字數 2238 閱讀 9653

swift的字串型別由string型別表示,也有多種訪問方式,例如以character集合方式訪問。

字串的字面量是一對雙引號包裹著的具有固定順序的字符集。

一對三個引號包裹著的字串是多行字串字面量。字串開始位置為三引號後一行(意味著第乙個換行符不會計入),結束位置是三引號前一行(意味著三引號前的換行符不計入)。

多行字串出現換行符,那麼字串對應位置也有換行符。如果不需要換行符,並且希望換行的話需要使用反斜槓\作為續行符。

多行字串會對縮排進行匹配,關閉引號前的空格數會看做縮排直接去除。

unicode字元

在三引號中使用單個雙引號不需要轉義,使用三引號至少需要將乙個雙引號轉義。

將引號的外面加上一對#,那麼引號內轉義意義消失,變成普通字元。如果需要轉義,那麼要在反斜槓後加上對應數量的#,例如# "line1 \#n line2" #的轉義字元就會生效。多行字串也有一樣的效果。

有兩種方式:

var emptystring = ""

var anotheremptystring = string()

兩種方式完全等價。並且可以使用isempty屬性判斷是否為空字串。

因此字串在拷貝時會拷貝乙份副本,而不是對原始字串進行操作。

可以使用for-in語法逐個訪問字元,同時也可以使用字元陣列初始化字串:

let catcharacters: [character] = ["c", "a", "t", "!", "				
Chapter 3 棧與佇列

2.佇列 3.棧與佇列的應用 通常,棧可定義為只允許在表的末端進行插入和刪除的線性表。後進先出 lifo 棧的基本操作 解答演算法題時,若題幹未做出限制,則可直接使用這些基本的操作函式。p60 p62 利用棧底位置相對不變的特性,可讓兩個順序棧共享乙個一維資料空間,將兩個棧的棧底分別設定在共享空間的...

Chapter 3 軟體過程結構

由圖可以看出,每個框架活動由一系列軟體工程動作構成 每個軟體工程動作由任務集來定義,這個任務集明確了將要完成的工作任務 將要產生的工作產品 所需要的質量保證點,以及用於表明過程狀態的里程碑。過程模式 process pattern 描述了軟體工程工作中遇到的過程相關的問題,明確了問題環境並給出了針對...

Chapter 3 棧和佇列

一 棧和佇列的基本概念 棧的基本概念 只能在一端進行插入或刪除的線性表。進行插入或刪除操作的一端稱為棧頂,另一端為棧底,棧底是固定不變的。棧的特點 filo 先進後出 棧的儲存結構 順序棧和鏈式棧 和線性表類似 棧的數學性質 當n個元素以某種順序如棧,並在入棧的過程中可以隨時出棧時,最終在所有元素經...