前言
我們都知道Swift
有兩種方式存儲臨時數據,在swift
中并沒像OC
那樣存在非0即真
的概念,但都是用布爾值來存儲真或假。
一、如何使用布爾值存儲真假
例如定義一個bool
的屬性
// bool值存儲真假
// 創建bool類型和其他類型創建一樣
let goodDogs = true // 初始化一個bool類型
let gameOver = false
通過某個條件判斷其真假
let fileName = "paris.jpg"
print(fileName.hasSuffix("jpg"))// 后綴是否是以jpg結尾 返回的是一個新值 真或假
let number = 120
print(number.isMultiple(of: 3)) // 是否是3的倍數 返回的是一個新值 真或假
我們常在實際開發過程中,會用到某個bool
屬性取反,然后更新其狀態,然我 swift
中兩種方式進行取反操作。
// 在開發過程中,我們常常需要判斷其真假、或者取反
var isAuthenicated = false
print(isAuthenicated)
// 取反方式一
isAuthenicated = !isAuthenicated
print("方式一 \(isAuthenicated)")
// 取反方式二
isAuthenicated.toggle() // toggle()函數會將一個假值轉換成一個真值,一個真值轉換成假值
print("方式二 \(isAuthenicated)")
二、字符串的串聯與插值
我們在學習oc
的過程中,多個NSString
進行串聯是通過它的靜態方法[NSString stringWithFormat: @"%@%@", str1, str2]
,但是在Swift
中就比較簡單,也是兩種方式。
方式一:+
, 也就是說可以通過+
號將兩個字符串串聯成一個字符串
let greetings = "hello, "
let msg = "world"
let sentence = greeting + msg
print(sentence)
方式二:插值\()
// 如何將字符串串聯在一起
let name = "Alexander"
let age = 23
print("my name is \(name), and I am \(age) years old")
swift是類型推導,所以不同的數據類型不能進行+\-*
,需要進行強制類型轉換,字符串串聯也是一樣,不同類型的字符串不能用+
進行串聯,需要用\()
.
不同類型串聯錯誤例子
字符串串聯正確例子
總結
- Swift 允許使用
let
創建常量,使用var
創建變量 - 如果我們不打算改變其值,確保使用
let
避免錯誤 - Swift中
Int
、interger
代表整型,Double
代表浮點類型 - Swift內置很多運算符,不同類型的常量或變量不能進行
+-*/
,否則會報錯 - Swift中的bool 表示簡單的
true
、false
,可以用!
取反,也可以用取反函數toggle()
- Swift 中字符串串聯不同類型不能使用
+
進行格式化,需要用\()
進行插值。