Swiftのきほん -変数と定数・型・配列と辞書-
公式のSwift Development Resourcesを参考にしています。
変数と定数
varを使えば変数、letを使えば定数を定義できる。
var hogeVariable = 1 let hogeConstant = 2
型について
変数や定数に代入される値によって暗黙的(implicitly)に型が予測される。
var implicitInt = 2 -> Int型 var implicitDouble = 7.0 -> Double型
明示的(implicitly)に型を宣言する場合、「:(セミコロン)」をつかってvar 変数名: 型名
とする。
var explicitFloat: Float = 4 -> Float型
変数の型を確認する方法
type(of: )
を使用する。
(dynamicTypeやString(describing: )は使わない) var hoge = "notHoge" print(type(of: hoge)) -> String
型変換は暗黙的に行われない
一度宣言した変数の値をあとから異なる型に変換したい場合は、明示的に変換したい型のインスタンスを作る必要がある。
var label = "Width is " var width = 100 print(label + width) -> error: binary operator '+' cannot be applied to operands of type 'String' and 'Int' print(label + String(width)) -> "Width is 100"
文字列の中に数値型の値を入れる場合、インスタンスを生成しなくても「(バックスラッシュ)」をつかって\(変数名)
とする方法もある。
var apples = 3 var pineapples = 2 var appleSum = "I have \(apples) apples." -> "I have 3 apples" var fruitSum = "I have \(apples + pineapples) pieces of fruit." -> "I have 5 pieces of fruit."
複数行の文字列を扱う方法
「”(ダブルクォーテーション)」を3つ並べて""" 文字列 """
と囲ってあげる。
var mailContent = """ Hi,bro. It has been a long time. How is everything? """
辞書型と配列
配列と辞書型の宣言には「 」を使い、要素にアクセスするにはインデックスやキーを[ ]内に書く。 コンマは最後の要素のあとにも書くことができる。
var shoppingArray = ["banana", "milk", "nuts", "salmon",] ->["banana", "milk", "nuts", "salmon"] print(shoppingArray[2]) -> "nuts" var presidentsDictionary = [ "Shinzo": "Japan", "Trump": "America", "Putin": "Russia" ] ->["Shinzo": "Japan","Trump": "America", "Putin": "Russia"] print(presidentsDictionary["Shinzo"]) -> "Japan"
空の配列と辞書
空の配列や辞書型の変数を宣言する場合は、初期化する構文を使う。
var emptyArray = [String]() -> [] var emptyDictionary = [String: Float]() -> []
配列と辞書型の変数がすでに宣言されていて、型が明らかな場合は以下の方法で空にすることが可能。
var shoppingArray = ["banana", "milk", "nuts", "salmon"] shoppingArray = [] -> [] //Array<String> var presidentsDictionary = ["Shinzo": 63, "Trump": 71, "Putin": 65] presidentsDictionary = [:] -> [:] //Dictionary<String, Int>