LoginSignup
0
1

More than 1 year has passed since last update.

Swiftの変数について

Posted at

Swiftでの変数はを定義する場合大きくvar,letの二つです。
変数がわからない人は回れ右。
変数に悩んでいる人は是非見て欲しいです。
※これはSwift Playgroundsで2022年7月1日に検証したものになります。情報が古くなっていた場合更新しますのでコメントお願いします。

共通事項

定義した変数(varに限る)はいつでも

定義した変数名 = 新しい変数の中身

で新しい数を代入、すなわち書き換えることができます。

var

var 変数名 = 変数の中身
var 変数名:変数型 = 変数の中身 //変数型を使う場合

書き換えができる変数を作ります。

変数名 変数型 変数の中身
重要性 必須 任意 必須
説明 変数の名前を指定します 変数のタイプを指定します 変数の中身を指定します
補足

変数名(必須)

変数の名前を指定します。
abc数字及び日本語が使用できます(他の言語も使えるかも)
既に宣言した変数の名前や1文字目に数字がくる名前、!?などの記号は使用できません。

具体的な例
var a = 5 //OK
var A = 5 //OK
var 日本語 = 5 //OK
var 1K = 5 //数字から始まっているためNG
var gg? = 1 //記号から始まっているためNG
var a = 7 //既にaが指定されているためNG

変数型(任意)

変数の型、すなわちタイプを指定します。
指定しなくてもあまり問題はないですがこの変数は数字だけ、これは文字だけのように指定できるので便利です。

変数型 用途
Int 数字
String 文字列
Bool 真偽値(true or falseでこれ以外を中身に入れるとエラー吐きます)
Float 32bitサイズの浮動小数点型
Double 64bitサイズの浮動小数点型

変数の中身(必須)

変数の中身を指定します。
変数型に合わない中身(Intを指定し数字のみの変数にしたものに文字列を入れたりBoolでtrueかfalseに限定しているにも関わらず他の文字を入れたり)を入れたり、名前と同じく記号を入れたりすることはできません。
また、trueとfalseを除いた文字列を入れる場合はダブルクオーテーション(")で囲む必要があります。

で?どういうこと?という人はこちら
var a = 5 //OK
var HisNameIs:String = "John Cena" //OK
var Owatta = true //OK
var Count:Int = "あいう" //型にあっていないためNG
var Rookie:Bool = no //型にあっていないためNG
var i = 'AA' //""ではなく''のためNG

let

let 変数名 = 変数の中身
let 変数名:変数型 = 変数の中身 //変数型を使う場合

書き換えができない変数を作ります。
このコードで指定された変数は

letで指定した変数 = 新しい中身

で新しい中身を代入することができません。
なので定数と呼ぶこともあります。基本的なコードの仕組みはvarと一緒です。

変数名 変数型 変数の中身
重要性 必須 任意 必須
説明 変数の名前を指定します 変数のタイプを指定します 変数の中身を指定します
補足

変数名(必須)

変数の名前を指定します。
abc数字及び日本語が使用できます(他の言語も使えるかも)
既に宣言した変数の名前や1文字目に数字がくる名前、!?などの記号は使用できません。

具体的な例
let a = 5 //OK
let A = 5 //OK
let 日本語 = 5 //OK
let 1K = 5 //数字から始まっているためNG
let gg? = 1 //記号から始まっているためNG
let a = 7 //既にaが指定されているためNG

変数型(任意)

変数の型、すなわちタイプを指定します。
指定しなくてもあまり問題はないですがこの変数は数字だけ、これは文字だけのように指定できるので便利です。

変数型 用途
Int 数字
String 文字列
Bool 真偽値(true or falseでこれ以外を中身に入れるとエラー吐きます)
Float 32bitサイズの浮動小数点型
Double 64bitサイズの浮動小数点型

変数の中身(必須)

変数の中身を指定します。
変数型に合わない中身(Intを指定し数字のみの変数にしたものに文字列を入れたりBoolでtrueかfalseに限定しているにも関わらず他の文字を入れたり)を入れたり、名前と同じく記号を入れたりすることはできません。
また、trueとfalseを除いた文字列を入れる場合はダブルクオーテーション(")で囲む必要があります。

で?どういうこと?という人はこちら
let a = 5 //OK
let HisNameIs:String = "John Cena" //OK
let Owatta = true //OK
let Count:Int = "あいう" //型にあっていないためNG
let Rookie:Bool = no //型にあっていないためNG
let i = 'AA' //""ではなく''のためNG

使い分け

まずはvarとletを比較してみましょう。

var let
数値の書き換え できる できない
型の指定 できる できる

letは一度指定して仕舞えば変更できないので名前やメールアドレスなどで使うのがいいでしょう。

ミス等ございましたらコメントでご指摘ください。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1