在上一章節(jié)中我們已經(jīng)講到如何創(chuàng)建 Swift 語言的 "Hello, World!" 程序?,F(xiàn)在我們來復習下。如果創(chuàng)建的是 OS X playground 需要引入 Cocoa : import Cocoa /* 我的第一個 Swift 程序 */ var myString = "Hello, World!" print(myString) 如果我們想創(chuàng)建 iOS playground 則需要引入 UIKit : import UIKit var myString = "Hello, World!" print(myString) 執(zhí)行以上程序,輸出結(jié)果為: Hello, World! 以上代碼即為 Swift 程序的基本結(jié)構(gòu),接下來我們來詳細說明結(jié)構(gòu)的組成部分。 Swift 引入我們可以使用 import 語句來引入任何的 Objective-C 框架(或 C 庫)到 Swift 程序中。例如 import cocoa 語句導入了使用了 Cocoa 庫和API,我們可以在 Swift 程序中使用他們。 Cocoa 本身由 Objective-C 語言寫成,Objective-C 又是 C 語言的嚴格超集,所以在 Swift 應用中我們可以很簡單的混入 C 語言代碼,甚至是 C++ 代碼。 Swift 標記Swift 程序由多種標記組成,標記可以是單詞,標識符,常量,字符串或符號。例如以下 Swift 程序由三種標記組成: print("test!") 標記是:單詞、符號 print ( "test!" ) 注釋Swift的注釋與C語言極其相似,單行注釋以兩個反斜線開頭: //這是一行注釋 多行注釋以/*開始,以*/結(jié)束: /* 這也是一條注釋, 但跨越多行 */ 與 C 語言的多行注釋有所不同的是,Swift 的多行注釋可以嵌套在其他多行注釋內(nèi)部。寫法是在一個多行注釋塊內(nèi)插入另一個多行注釋。第二個注釋塊封閉時,后面仍然接著第一個注釋塊: /* 這是第一個多行注釋的開頭 /* 這是嵌套的第二個多行注釋 */ 這是第一個多行注釋的結(jié)尾 */ 多行注釋的嵌套是你可以更快捷方便的注釋代碼塊,即使代碼塊中已經(jīng)有了注釋。 分號與其它語言不同的是,Swift不要求在每行語句的結(jié)尾使用分號(;),但當你在同一行書寫多條語句時,必須用分號隔開: import Cocoa /* 我的第一個 Swift 程序 */ var myString = "Hello, World!"; print(myString) 標識符標識符就是給變量、常量、方法、函數(shù)、枚舉、結(jié)構(gòu)體、類、協(xié)議等指定的名字。構(gòu)成標識符的字母均有一定的規(guī)范,Swift語言中標識符的命名規(guī)則如下:
例如: userName、User_Name、_sys_val、身高等為合法的標識符,而2mail、room#和class為非法的標識符。 注意:Swift中的字母采用的是Unicode編碼[1]。Unicode叫做統(tǒng)一編碼制,它包含了亞洲文字編碼,如中文、日文、韓文等字符,甚至是我們在聊天工具中使用的表情符號 如果一定要使用關鍵字作為標識符,可以在關鍵字前后添加重音符號(`),例如: 關鍵字關鍵字是類似于標識符的保留字符序列,除非用重音符號(`)將其括起來,否則不能用作標識符。關鍵字是對編譯器具有特殊意義的預定義保留標識符。常見的關鍵字有以下4種。 與聲明有關的關鍵字
與語句有關的關鍵字
表達式和類型關鍵字
在特定上下文中使用的關鍵字
Swift 空格Swift語言并不是像C/C++,Java那樣完全忽視空格,Swift對空格的使用有一定的要求,但是又不像Python對縮進的要求那么嚴格。 在Swift中,運算符不能直接跟在變量或常量的后面。例如下面的代碼會報錯: let a= 1 + 2 錯誤信息是: error: prefix/postfix '=' is reserved 意思大概是等號直接跟在前面或后面這種用法是保留的。 下面的代碼還是會報錯(繼續(xù)注意空格): let a = 1+ 2 錯誤信息是: error: consecutive statements on a line must be separated by ';' 這是因為Swift認為到1+這個語句就結(jié)束了,2就是下一個語句了。 只有這樣寫才不會報錯: let a = 1 + 2; // 編碼規(guī)范推薦使用這種寫法 let b = 3+4 // 這樣也是OK的 Swift 字面量所謂字面量,就是指像特定的數(shù)字,字符串或者是布爾值這樣,能夠直接了當?shù)刂赋鲎约旱念愋筒樽兞窟M行賦值的值。比如在下面: 42 // 整型字面量 3.14159 // 浮點型字面量 "Hello, world!" // 字符串型字面量 true // 布爾型字面量 |
|