文章目录
吐槽
Xcode升级,什么appdelegate都没有了,现在全是swiftUI。。。
下面的代码是playground的代码,不是swiftUI View。
参考资料:https://www.hackingwithswift.com/100/swiftui/3
时间:09 October, 2020
结果
运行快捷键:shift+command+回车
删除当前行:option+D
算术运算符 - Arithmetic Operators
let firstScore = 12
let secondScore = 4
let total = firstScore + secondScore
let difference = firstScore - secondScore
let product = firstScore * secondScore
let divided = firstScore / secondScore
let remainder = 13 % secondScore
操作符重载 - Operator Overloading
let meaningOfLife = 42
let doubleMeaning = 42 + 42
let fakers = "Fakers gonna "
let action = fakers + "fake"
let firstHalf = ["John", "Paul"]
let secondHalf = ["George", "Ringo"]
let beatles = firstHalf + secondHalf
符合赋值运算符 - Compound Assignment Operators
var score = 95
score -= 5
var quote = "The rain in Spain falls mainly on the "
quote += "Spaniards"
比较运算符 - Comparison Operators
let firstScore = 6
let secondScore = 4
firstScore == secondScore
firstScore != secondScore
firstScore < secondScore
firstScore >= secondScore
"Taylor" <= "Swift"
条件语句 - Conditions
let firstCard = 11
let secondCard = 10
if firstCard + secondCard == 2 {
print("Aces – lucky!")
} else if firstCard + secondCard == 21 {
print("Blackjack!")
} else {
print("Regular cards")
}
多条件 - Combining Condions
let age1 = 12
let age2 = 21
if age1 > 18 && age2 > 18 {
print("Both are over 18")
}
if age1 > 18 || age2 > 18 {
print("At least one is over 18")
}
三元操作符 - The Ternary Operator
let firstCard = 11
let secondCard = 10
print(firstCard == secondCard ? "Cards are the same" : "Cards are different")
分支语句 - Switch Statements
注意:这个switch和C不一样,默认是仅执行匹配的一条分支,所以不需要break。
关键:多了一个属性,如果要执行匹配分支之后的紧随的分支,在该分支前添加fallthrough即可,并可以连续,直到没有fallthrough语句。
let weather = "sunny"
switch weather {
case "rain":
print("Bring an umbrella")
case "snow":
print("Wrap up warm")
case "sunny":
print("Wear sunscreen")
default:
print("Enjoy your day!")
}
switch weather {
case "rain":
print("Bring an umbrella")
case "snow":
print("Wrap up warm")
case "sunny":
print("Wear sunscreen")
fallthrough
default:
print("Enjoy your day!")
}
范围操作符 - Range Operators
…<等同于小于,例子:1…<5 = 1,2,3,4
…等同于小于等于,例子:1…5 = 1,2,3,4,5
let score = 85
switch score {
case 0..<50:
print("You failed badly.")
case 50..<85:
print("You did OK.")
default:
print("You did great!")
}