0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Swift学習記#1「変数の定義、配列の定義、データ型について」

Last updated at Posted at 2020-02-02

#はじめに
こんにちは!
今回は、前回の最後に言った通りSwiftの基礎文法についてで、
その中でも基礎中の基礎である変数の定義型の明示配列の定義について
アウトプットしていきます!

#まずは
前回と同じようにXcodeのPlaygroundを開きましょう!

#変数の定義
変数の定義には、他言語でもおなじみのletvarを使用します。

  • let

イミュータブルな関数を定義する。
* イミュータブル・・・成後に変数の状態を変更できない

test.Playground
//letでイミュータブルな変数の定義
let immutablevariable = "hello"
immutablevariable += " world"  // => error

このようにletで定義した変数は、
値を追加したり、変更したりすることはできない。

  • var

letとは反対にミュータブルな変数を定義する。
* ミュータブル・・・成後に変数の状態を変更することができる

test.Playground
//varでミュータブルな変数
var mutablevariable = "hello"
mutablevariable += " world"
print(mutableStr)  // => hello world

このように、 varで定義した変数は、
値を追加したり、変更したりすることができる。

#型の明示
前回、Swiftの変数の型は型推論によって自動的に決まると説明しましたが、
暗黙の型変換は行われません。

test.Playground
let labelStr = "This year is "
let thisYear = labelStr + 2017 // => error

このように、String型 + Int型のような場合でも
Int型は変換されずに計算されるためエラーが発生します。

なので、

test.Playground
let labelStr = "This year is "
let thisYear = labelStr + String(2017)
print(thisYear)  // => This year is 2017

String(2017)のように変数の型を明示せねばなりません。

また、文字列中で計算をする必要のある場合は式展開をする必要があります。

test.Playground
let yearInt = 2017
let nextYear = "Next year is \(yearInt + 1)"
print(nextYear)  // => Next year is 2018

このように、式展開を使用することで文字列中でも
Int型の計算が可能になります。

#配列の定義
配列型の定義の基本は他言語とそれほど変わりません。

test.Playground
//配列の定義
var items = ["red", "green", "black"]
//型を明示したい場合
var items: [String] = ["red", "green", "black"]

このように、簡単に定義することができます!

#ディクショナリの定義
これも同じ配列型の1つなのですが、
配列の中でも先ほどのものはArray型、こちらをDictionary型といいます。
このDictionary型は、配列内の値を**["キー": "値"]**の形で保存します。

test.Playground
var items = [
  "red": "RED",
  "green": "GREEN",
  "black": "BLACK"
]
// 型を明示
var items: [String: String] = [
  "red": "RED",
  "green": "GREEN",
  "black": "BLACK"
]

このように配列の1つの値に対して、"キー"と"値"の2つのセットが割り当てられます。

#これまで
今回は、基礎文法の中でも基礎中の基礎である変数の定義型の明示
配列の定義についてアウトプットしていきました。
ここでつまづいてしまうとこの後の学習がすごく辛くなります!
十分復習しアウトプットをして万全の体制で次に進みましょう。

次回はこの続き、繰り返し分などの基礎文法についてのアウトプットです!
ではまた。

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

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?