【Swift超基礎】変数と定数の違いと使い方
本記事では、Swiftでプログラミングを行う際の基本である変数と定数とは何かというところから始まり、その使い方について説明していきます。その中で変数と定数の違いについても触れていきます。
変数とは
変数とは値を入れておくための箱のことです。値とは、数値や文字列、真偽値などのことを指します。
値を変数に入れておくことで、必要なタイミングでその値を使用することができたり、複数の処理の中で同じ値を使用することもできます。
また、変数はその名の通り値を変更することが可能で、変数に数値が入っている場合にはその値に加算したり減算したりすることもできます。
変数の使い方
まずは、変数という箱を作成する方法です。箱を作ることを宣言と言い、変数宣言と言われています。
変数宣言は、以下のように変数名の前にvarをつけることで変数を宣言するということを意味します。
また、「=」は等しいという意味ではなく、代入するという意味を持っています。

変数名には任意の値をつけられますが、代入する値が何を示しているのかよりわかりやすく示すことが大切です。aaaやrなどの変数名をつけてしまうと後から見返した時や他の人がソースを触るときに何のための変数なのかわからなくなってしまいます。
//名前を示す変数
var name = "私の名前"
//年齢を示す変数
var age = 20
//私の身長を示す変数
var myHeight = 170
変数名をわかりやすくするために複数の単語を組み合わせるためにはローワーキャメルケースという書き方をし、「my height」であれば「myHeight」というように2つ目以降の単語の先頭文字を大文字にして繋げる書き方をします。
//数値を入れておく変数を宣言
var count = 0
print(count)
//数値に1を代入
count = 1
print(count)
//数値に1を加算
count = count + 1
print(count)
変数に数値を入れておくと1を代入した場合には、値が1に書き換わり、count + 1を代入した場合には、元々countに入っている1と1を足した値である2がcountの中に代入されます。
//実行結果
0
1
2
定数とは
定数とは変数と同様に値を入れておく箱のことを示します。
変数と同様に必要なタイミングでその値を使用することができたり、複数の処理の中で同じ値を使用することができます。
定数は、最初の宣言時に値を入れ、その後には定数の中に入っている値を書き換えたり、加算したりすることができません。鍵のかかっている箱というイメージです。
定数は変更したくない値を使用する際に使用し、後から自分で書き換えてしまうことを防いだり、他の開発者に対して書き換えたくない値であることを明示的に示すといった役割を持っています。
定数の使い方
定数の宣言は以下の通りで、先頭にletをつけて定数宣言であることを示してから定数名、値を記述していきます。後続の処理の中で変更したい値を定数として宣言してしまわないように注意しましょう。

定数の宣言を行う際にも、変数同様に定数名はローワーキャメルケースで、わかりやすい名前をつけることが推奨されます。
//一次関数を表す定数
let linearFunction = "y=ax+b"
//円周率を表す定数
let pi = 3.14
pi = 5 ←エラーになる
//円の面積を入れたい
var area = 5 * 5 * pi
例えば一次関数や円周率のような変わることのない値を扱う場合には定数がぴったりで、途中で値が変更されることはなく、必要なタイミングで安心して使用することができます。
変数と定数の共通点と違いまとめ
以下に示すような違いから、基本的に使用するのは変数になるかと思いますが、書き換えたくない値はそれを明示する意味を含めて定数にするなど、変数と定数をうまく使い分けていきましょう。
共通点
- 変数、定数は値を格納しておく箱
- 変数名、定数名はローワーキャメルケースで書く
- 変数名、定数名は小文字のアルファベットから始める。
- 変数名、定数名は基本はアルファベット、数字、アンダースコアのみで構成する
違い
- 変数は後から値を書き換えることができる
- 定数は後から値を書き換えることはできない
最後に
今回はSwiftに限らず、プログラミングを行う上での基礎である変数と定数の違いについて解説しました。
他にもSwiftの基礎知識やSwiftUIに関する記事を書いていきますので、ぜひそちらもご確認ください。
-
前の記事
【Swift基礎】Xcode開発環境の構築 2023.05.05
-
次の記事
【Swift超基礎】条件分岐の基礎~if文とswitch文~ 2023.05.10