Swift學習筆記

一、swift 的打印輸出
a、打印字符串

print("我要打印輸出")

b、字符串拼接

let data = "我是打印的數據"
      print("hello --  \(data)")

結果:a、我要打印輸出
b、hello -- 我是打印的數據

二、 MARK: - if let /var 連用語法
不是單純的if 語句

//if let 連用,判斷對象的值是否為nil,{}內一定有值,可以直接使用,不需要解包
// if var 連用,{} 可以對值進行修改
fun demo1(){
let oName:String? = "老王"
let oAge:Int? = 10
if var name = oName
    let age  = oAge{
name  = "老李"
// 進入分支之后,name 和 age 一定有值,不需要解包
// name 和 age 的作用域僅在{}中
print(name +String(age) )
}  else{
print("name 或 age 為nil" )
}
}
屏幕快照 2017-06-13 12.56.33.png

// guard 守衛/守護

fun demo2(){
let oName:String? = "老王"
let oAge:Int? = 10
// guard let 守護一定有值,如果沒有直接返回
guard let name = oName,
age = oAge  else {
 print("姓名或者年齡為nil")
return
}
// 代碼執行至此,name 和 age 一定有值
// 通常判斷是否有值之后,會做具體的邏輯實現
// guard 的語法 是Swift 2.0 推出的
print(name +String(age))

}

// guard let & if let 的技巧

fun demo2(name:String?,age:Int?){

if let name = name,age = age {
print(name + String(age))
print (“----------------”)
}
// 使用同名的變量接收值,在后續使用的都是非控制,不需要解包
// 好處,可以避免起名字的煩惱
guard let name = name, age = age else {
 print("姓名或者年齡為nil")
return
}

print(name +String(age))

}

Swift 有三種訪問修飾符:
public internal internal(英文直譯:里面的,adj),默認的是 internal。public:可以訪問自己模塊中任何 public,被 import 到其他模塊,也可以被訪問internal:只能訪問自己模塊中任何 internal 實體,不能訪問其他模塊中的 internal 實體private:顧名思義,就是私有,只能在當前源文件中使用。根據特點決定,如果編寫 App 的話,直接用默認的就好了,就是啥也不用敲如果編寫 Framework,請認真思考流程,認真設計,外部接口要設置 public,而一些不想讓別人看見的就可以用 private 或者 internal 修飾

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • Swift2.0 1.defer譯為延緩、推遲之意類似棧 注意作用域,其次是調用順序——即一個作用域結束(注意),...
    zeqinjie閱讀 3,411評論 0 50
  • 一直沒有時間好好看一下swift,最近復習了一遍語法,這里記錄swift學習過程中遇到的一些問題和要點,和Obje...
    bomo閱讀 2,429評論 0 25
  • 136.泛型 泛型代碼讓你可以寫出靈活,可重用的函數和類型,它們可以使用任何類型,受你定義的需求的約束。你可以寫出...
    無灃閱讀 1,523評論 0 4
  • 一、swift 的打印輸出a、打印字符串 b、字符串拼接 結果:a、我要打印輸出b、hello -- 我是打印的數...
    蝸牛鍋閱讀 390評論 0 0
  • 前置條件 已經安裝了angular2/cli和npm。其中前者安裝命令為npm install -g @angul...
    小孩真笨閱讀 162評論 0 0