1
2

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.

辞書Dictionary型の配列 swift まとめ

Posted at

#■辞書型の配列にはキーと値がある。型がそれぞれ統一されている。 基本はね...
キーがString型なら全てのキーがStringになる。
値がInt型なら全ての値がInt型になる。

var dic1 = ["name":"aoka","age":"28"]
print(dic1)
//結果: ["name":"aoka","age":"28"]


var dic2 = ["apple":100,"banana"200,"orange":300]
print(dic2)
//結果: ["apple":100,"banana"200,"orange":300]


後にAny型を使った紹介をするそれを使えば型をバラバラに入れれる。

#■空の辞書型の配列を作ろう

//これでキーはString型,値はInt型の空の配列ができる。
var dic3 = Dictionary<String:Int>()

//これをprintすれば空の辞書型配列だとわかる。
print(dic3)
//結果: [:]

#■データの代入方法

//空の辞書型配列があると仮定する。
var dic3 = Dictionary<String:Int>()

dic3["apple"] = 100
dic3["banana"] = 200

print(dic3)
//結果: ["apple":100,"banana": 200]

#■データを取り出してみよう
オプショナルバインディングしないとoptional(値)で返ってくる
optional(値)だと使えない!!!!


var dic4 = ["apple":100,"banana"200,"orange":300]
print(dic4["apple"])
//結果: optional(100) となり使えない!!!!!

//オプショナルバインディング
if let price = dic4["apple"] {
 print(price)
}
//結果: 100 となり使える!!!


//デタラメなキー入れたらただのnilになる。
print(dic4["APPLE"])
//結果: nil

#■データの上書き

var dic4 = ["apple":100,"banana"200,"orange":300]

dic4["banana"] = 999

if let price = dic4["banana"] {
  print(dic4["banan"])
}
//結果: 999


//データの消去もできる。
dic4["aplle"] = nil

if let price = dic4["apple"] {
 print(dic4["apple"])
}  else {
  print("データをnilにして消したからこっちが表示される。")
}

//結果: データをnilにして消したからこっちが表示される。

#■Any型を使い色んな型を値に指定してみた!!

//値をAny型とする。
var dic5:Dictionary<String:Any> = ["name":"aoka", "age":28, "birthday":Date()]

//値がAny型なのでオプショナルバインディングして確認 これは本当にString型なのか等...
if let name = dic5["name"] as? Stirng {
 print(dic5["name"])
}
//結果: aoka

if let age = dic5[age] as? Int {
 print(dic5["age"])
}
//結果: 28

if let birthDay = dic5["birthday"] as? Date {
    print(birthDay)
}
//結果: 2021-04-26 14:31:50 +0000

参考にさせて頂いた動画です! 
https://www.youtube.com/watch?v=IJIJawKJTLc&list=PLQ5rERkGSxF9_soz3Ns-SpURWsy0WmbJQ&index=51
アプリ道場サロン

1
2
1

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
1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?