swift基本データ型と構文
2864 ワード
1.playgroundは新しいファイルタイプで、swiftコードをテストし、サイドバーに結果を表示します.
2. Variables vs. Constants
declare Constants keyword: let
declare Variables keyword: var
3. Explicit vs. Inferred Typing
Explicit typing:
Inferred typing:
4.SwiftのBasic TypeとControl flow
FloatsとDoubles
Note:Doubleは精度が高く、デフォルトのInferred typing
Bools
Strings
Note:Objective-Cのように@記号は使わない
If構文とStringsの変更
5.ClassesとMethods
以上のコードをplaygroundファイルに入れ、Show Assistant Editorをクリックして結果を表示します.
6.ArrayとFor loop
an array of doubles:
arrayの各項目を列挙し、迅速に列挙する
OR
7. Dictionaries
TipCalculatorクラスの後に呼び出されます.
2. Variables vs. Constants
declare Constants keyword: let
declare Variables keyword: var
3. Explicit vs. Inferred Typing
Explicit typing:
let tutorialTeam: Int = 56
Inferred typing:
let tutorialTeam = 56 //
4.SwiftのBasic TypeとControl flow
FloatsとDoubles
let priceInferred = 19.99
let priceExplicit: Double = 19.99
Note:Doubleは精度が高く、デフォルトのInferred typing
Bools
let onSaleInferred = true
let onSaleExplicit: Bool = false
Strings
let nameInferred = "Whoopie Cushion"
let nameExplicit: String = "Whoopie Cushion"
Note:Objective-Cのように@記号は使わない
If構文とStringsの変更
if onSaleInferred {
println("\(nameInferred) on sale for \(priceInferred)!")
} else {
println("\(nameInferred) at regular price: \(priceInferred)!")
}
5.ClassesとMethods
// 1
class TipCalculator {
// 2
let total: Double
let taxPct: Double
let subtotal: Double
// 3 ,
init(total:Double, taxPct:Double) {
self.total = total
self.taxPct = taxPct // , self
subtotal = total / (taxPct + 1)
}
// 4
func calcTipWithTipPct(tipPct:Double) -> Double {
return subtotal * tipPct
}
// 5
func printPossibleTips() {
println("15%: \(calcTipWithTipPct(0.15))")
println("18%: \(calcTipWithTipPct(0.18))")
println("20%: \(calcTipWithTipPct(0.20))")
}
}
// 6
let tipCalc = TipCalculator(total: 33.25, taxPct: 0.06)
tipCalc.printPossibleTips()
以上のコードをplaygroundファイルに入れ、Show Assistant Editorをクリックして結果を表示します.
6.ArrayとFor loop
an array of doubles:
let possibleTipsInferred = [0.15, 0.18, 0.20]
let possibleTipsExplicit:Double[] = [0.15, 0.18, 0.20]
arrayの各項目を列挙し、迅速に列挙する
for possibleTip in possibleTipsInferred {
println("\(possibleTip*100)%: \(calcTipWithTipPct(possibleTip))")
}
OR
for i in 0..possibleTipsInferred.count {
let possibleTip = possibleTipsInferred[i]
println("\(possibleTip*100)%: \(calcTipWithTipPct(possibleTip))")
}
7. Dictionaries
// 1
func returnPossibleTips() -> Dictionary<Int, Double> {
let possibleTipsInferred = [0.15, 0.18, 0.20]
let possibleTipsExplicit:Double[] = [0.15, 0.18, 0.20]
// 2
var retval = Dictionary<Int, Double>()
for possibleTip in possibleTipsInferred {
let intPct = Int(possibleTip*100)
// 3
retval[intPct] = calcTipWithTipPct(possibleTip)
}
return retval
}
TipCalculatorクラスの後に呼び出されます.
tipCalc.returnPossibleTips()