if else
//******************* 分支語句 **********************
// if語句的條件必須是bool值 或者bool表示式
// bool值只能用true或者false
let isorno = true
if isorno else
var count:int? = nil // "?" 代表可選
count = 20
if count > 0 else
// 拼接
let str_pinjie = "數字count是\(count)"//"數字count是optional(20)"
let str_pinjie2 = "數字count是\(count!)" // "數字count是20", 加了!號 解包
// 也可把 宣告變數的表示式 作為條件
if let count1 = count else
// ps: 分支語句原則上必須保持完整 (有了if 就得有 else)
迴圈
// ************
// 迴圈 while
var number = 0
while number < 3
number
// do while
repeat while number < 10
// for迴圈
for (var num = 0; num < 10; num++)
// for迴圈條件可以省略, 但是分號不能省略
// 這是個死迴圈
//for ; ;
// for迴圈的省略機制
//for ; number < 2;
array
// for ... in 迴圈, 變數可以不宣告, 只作用於迴圈作用域中
for num2 in array
var dic = [33 : "value"]
for value in dic
// 使用元組列舉字典的時候, 相當於為元組的元素命名, 可作為區域性變數使用
for (key, value) in dic
// 佔位符 _
// 使用佔位符忽略掉不想使用的變數
for (_, value) in dic
for (key, _) in dic
// 區域運算子在迴圈中的使用
for value in 1..<5
for value in 1...5
for value in array[2..<3]
switch case
// 分支....... switch
var point = (2,0)
switch point
// 值繫結
switch point
/*fallthrough下面的那個case不能宣告新變數、常量,也就是不能跳轉到case後面接var或者let的語句的。
原因是因為fallthrough不會檢查where匹配條件,這樣便會導致var或者let宣告的變數常量無法得到值,所以swift禁止fallthrough到這樣的case中。
*/switch point
// 區間匹配
// switch 與區間運算子的結合使用
var number2 = 20
switch number2
for value in 1...100
}var tempstring = "fdsgafeiourelfhjds"
switch
和迴圈巢狀使用的時候
, 如要終止迴圈需要給迴圈去個名字
, 用這個
(break
迴圈別名)
// 遍歷字串
str.characters
// tempname:
給迴圈起名字
// 當
for...in
迴圈與switch
結合使用的時候
執行break語句,
首先被識別為
switch
分支自帶的
break. ,
如果要想終止迴圈
, 此時需要為迴圈新增別名
, 使用別名進行打斷迴圈的操作
// tempname 是這個迴圈的別名
tempname: for tempstr in tempstring.characters
}
iOS講解迷惑之鍵盤彈出遮擋輸入框的問題
1 將輸入框的 設定為self 在lb檔案中將輸入框的delegate設定為file s owner 或者使用 textfield.delegate self 2 將輸入框所對應的viewcontroller.h設定實現了uitextfielddelegate協議 在viewcontroller.m...
深入講解Swift的記憶體管理
前言 llvm編譯器的好 swift的記憶體管理除了要注意引用迴圈之外,幾乎全部被llvm編譯器包攬,不需要開發人員操心。swift 是自動管理記憶體的,這也就是說,我們不再需要操心記憶體的申請和分配。當我們通過初始化建立乙個物件時,swift 會替我們管理和分配記憶體。而釋放的原則遵循了自動引用計...
iOS筆記 Swift中的Optional型別
在objective c中並沒有optional型別,只有nil,並且nil只能用於表示物件型別無值,並不能用於基礎型別 int,float 列舉和結構體,基礎型別需要返回類似nsnotfound的特殊值來表示無值,所以在swift中定義了optinal型別來表示各種型別的無值狀態,並規定了nil不...