不変の定数に let を使用し、変動する変数に var を使用します。定数の値はコンパイル時に明らかである必要は無いものの、値を代入することは一度しかできません。

var myVariable = 42
myVariable = 50
let myConstant = 42

定数または変数は、代入する値と同じ型でなければいけません。常に型を明示的に記述する必要はなく、定数や変数を宣言時に値を代入することで、コンパイラに型を推論させることができます。上の例では、myVariable の初期値が整数であるため、コンパイラは整数であると推論できます。

初期値が十分な情報を持たない場合や、初期値が無い場合には、変数の後にコロンで区切って型を指定します。

let implicitInteger = 70
let implicitDouble = 70.0
let explicitDouble: Double = 70
EXPERIMENT
明示的に Float 型を指定し、値 4 の定数を宣言してみよう。

値が暗黙のうちに別の型に変換されることは決してなく、異なる型に値を変換したい場合は明示的に型のインスタンスを生成します。

let label = "The width is "
let width = 94
let widthLabel = label + String(width)
EXPERIMENT
最後の行から String への変換を削除して、エラーを確認してみよう。

文字列に値を含めるさらにシンプルな方法があります。丸括弧の中に値を置き、括弧の前にバックスラッシュ (\) を置きます。

let apples = 3
let oranges = 5
let appleSummary = "I have \(apples) apples."
let fruitSummary = "I have \(apples + oranges) pieces of fruit.
EXPERIMENT
\() を使用して文字列の中で浮動小数の計算を含めてみよう。\() を使用して挨拶文に誰かの名前を含めてみよう。

角括弧 ([]) を使って配列と辞書を生成し、インデックスまたはキーを角括弧の中に置いて要素にアクセスします。コンマは最後の要素の後にも置くことが許容されています。

var shoppingList = ["catfish", "water", "tulips", "blue paint"]
shoppingList[1] = "bottle of water"

var occupations = [
    "Malcolm": "Captain",
    "Kaylee": "Mechanic",
]
occupations["Jayne"] = "Public Relations"

空の配列や辞書を生成するには、初期化シンタックスを使用します。

let emptyArray = [String]()
let emptyDictionary = [String: Float]()

既存の変数に新しく値を設定するときや、関数の引数として使うときのように、型の情報が推論されている場合には、空の配列を [] とし、空の辞書を [:] として記述することができます。

shoppingList = []
occupations = [:]

Portions of this page are translations based on work created and shared by Apple and used according to terms described in the Creative Commons Attribution 4.0 International License.