Swift最基本的語法變化
導入框架 import UIKit
定義標識符時,必須聲明該標識符是變量還是常量聲明標識符的
格式:變量/常量關鍵字 名稱 : 數據類型語句結束時不需要加 ;如果同一行有多個語句,則依然需要加
但是不建議一行多條語句Swift中的打印語句: print("打印的內容")
什么是常量和變量
- 在Swift中規(guī)定:在定義一個標識符時必須明確說明該標識符是一個常量還是變量
1.使用let來定義常量,定義之后不可以修改
2.使用var來定義變量,定義之后可以修改
注意:
在真實使用過程中,建議先定義常量,如果需要修改再修改為變量(更加安全)
是指向的對象不可以再進行修改.但是可以通過指針獲得對象后,修改對象內部的屬性
類型推導
Swift是強類型的語言
Swift中任何一個標識符都有明確的類型
注意:
1.如果定義一個標識符時有直接進行賦值,那么標識符后面的類型可以省略.
2.因為Swift有類型推導,會自動根據后面的賦值來決定前面的標識符的數據類型 可以通過option+鼠標左鍵 來查看變量的數據類型
Swift中基本運算
1.Swift中在進行基本運算時必須保證類型一致,否則會出錯相同類型之間才可以進行運算
因為Swift中沒有隱式轉換
2.數據類型的轉化Int類型轉成Double類型:Double(標識符)
Double類型轉成Int類型:Int(標識符)
let a = 10
let b = 3.14
// 錯誤寫法
//let c = a + b
//let c = a * b
// 正確寫法
let c = Double(a) + blet
d = a + Int(b)
if分支語句
和OC中if語句有一定的區(qū)別判斷句可以不加()
在Swift的判斷句中必須有明確的真假不再有非0即真
必須有明確的Bool值
Bool有兩個取值:false/true
guard的使用
guard語句必須帶有else語句,它的語法如下:當條件表達式為true時候跳過else語句中的內容,執(zhí)行語句組內容
條件表達式為false時候執(zhí)行else語句中的內容,跳轉語句一般是return、break、continue和throw
guard 條件表達式 else { // 條換語句
break}
語句組
switch分支
基本用法和OC用法一致
不同之處:switch后可以不跟()
case后可以不跟break(默認會有break)
簡單使用補充:
1.一個case判斷中,可以判斷多個值
多個值以, 隔開 如果希望出現(xiàn)之前的case穿透,則可以使用關鍵字fallthrough
2.什么是區(qū)間?通常我們指的是數字區(qū)間:010,100200
3.swift中的區(qū)間常見有兩種半開半閉區(qū)間:0..<10 表示:0~9,不包括10
閉區(qū)間:0...10 表示:0~10
let score = 88switch score {
case 0..<60:
print("不及格")
case 60..<80:
print("幾個")
case 80..<90:
print("良好")
case 90..<100:
print("優(yōu)秀")
default:
print("滿分")
}
循環(huán)的介紹
- 在開發(fā)中經常會需要循環(huán)
- 常見的循環(huán)有:for/while/do while.
- 這里我們只介紹for/while,因為for/while最常見
for循環(huán)的寫法
- 最常規(guī)寫法
// 傳統(tǒng)寫法
for var i = 0; i < 10; i++ {
print(i)
}
- 區(qū)間for循環(huán)
//半開半閉區(qū)間
for i in 0..<10 {
print(i)
}
//閉區(qū)間
for i in 0...10 {
print(i)
}
- 特殊寫法如果在for循環(huán)中不需要用到下標i
for _ in 0..<10 {
print("hello")
}
while和do while循環(huán)
- while循環(huán)
- while的判斷句必須有正確的真假,沒有非0即真
- while后面的()可以省略
var a = 0
while a < 10 {
a++
}
- do while循環(huán)使用
- repeat關鍵字來代替了do
let b = 0
repeat {
print(b)
b++
} while b < 20