seegongsik
単語帳
プログラミング

名ふだで さがす はこ、キーと値

配列は場所の番号で取り出しました(8話)。 でも、番号ではなく「名前」でさがしたいときがありますね。 友だちの電話番号を引くとき、 「47番目の人」ではなく「みんす」でさがします。 名ふだですぐ取り出す方法を、いま見ましょう。

01

番号ではなく名ふだ

8話の配列は、ならべた はこでした。
1番、2番、3番…場所の番号で取り出しました。
でも辞書で言葉を引くとき、
「325番目の言葉」は思いうかべません。
ただ「りんご」を開けば、意味が出ます。
キーと値は、こうやって名ふだでさがします。

名前をえらんで

名前をえらんでみて。場所の番号を知らなくても、すぐその値が出ます。

番号を数える必要はありません。
名前さえ知っていれば、まっすぐ値にとどきます。
では、この「名ふだと中身」は
どうやって ぴったり 組になるのでしょう?

02

組にする: キーと値

一つのマスは、いつも二つで一組です。
名ふだ(キー)と、その中身(値)。
「りんご」(キー) → 「くだもの」(値)、
「みんす」(キー) → 「010-1234」(値) のように。
キーを呼ぶと、組になった値がついて出ます。

キーを値につないでみて。むすばれると「キー → 値」一組になります。

キーは「どこでさがすか」を教える名前で、
値は「本当に入っているもの」です。
この組をたくさん集めたものが辞書です。
では組が多くなると、ほしいものをどう早くさがすのでしょう?

03

ならんでさがしません

値が千こあっても、
キーと値は最初から一つずつ見ません。
名ふだを見て、まっすぐそのマスへ行きます。
配列は場所がわからないと1番からさがしますが、
キーがあれば一発でとどきます。それが速いひけつです。

一つずつ
1
2
3
4
5
6
名ふだで
?
?
?
?
Mina
?

左は一つずつさがし、右は名ふだで一発。おしてくらべてみて。

名前さえ知っていれば、遠回りしません。
だからキーと値は「たくさんの中から
一つを早く取り出す」ことに、とても強いのです。
最後に、名ふだが まもる ルールが一つあります。

04

名ふだはかぶりません

ルールは一つです。
同じ名ふだは、たった一度しか使えません。
新しい名ふだは いくらでも つけていいですが、
すでにある名ふだに新しい値を入れると、
前の値は消えて、新しいものに変わります。

Mina 010-2345
Tom 010-7788

新しい名ふだはマスがふえ、同じ名ふだを入れなおすと、古い値が新しい値に変わります。

名ふだがかぶらないので、
「みんす」を呼んでも、まようことがありません。
いつも、ちょうど一つの値が返ります。
この単じゅんな組一つが、じつは どこにでも かくれています。

05

どこにでもある組、その先へ

辞書(言葉→意味)、設定(項目→値)、
連絡先(名前→番号)、ゲームのかばん(アイテム→数)。
ぜんぶキーと値です。
データを整理する、もっともよくある方法の一つです。
次は、こうした名ふだを一つにまとめて、
「一つのもの」のようにあつかう方法へ進みます。

Mina 010-2345
ぜんぶ同じキー → 値

辞書、設定、連絡先、かばん。押してみて。ぜんぶ同じ「キー → 値」です。

ならべた配列(8話)につづき、
名ふだでさがすキーと値も手に入れました。
番号でも名前でも、データをあつかえるようになったのです。
次は、名ふだをいくつか一つのはこに入れて、
「一つのもの」にまとめる方法、オブジェクトへ進みます。

一言でいうとキーと値は「名ふだ → 中身」のペアです。番号のかわりに名前(キー)で値をすぐ取り出し、名ふだはかぶりません。辞書、設定、連絡先は、ぜんぶこの方式です。
プログラミング
このページがお役に立ったなら支援する