
プリミティブ型と参照型って何?基本から理解しよう
プログラミングを始めると、よく出てくる言葉に「プリミティブ型」と「参照型」があります。これらはデータの種類を分ける言葉ですが、何がどう違うのか、初心者には少しわかりづらいですよね。ここでは、中学生でもわかるように、プリミティブ型と参照型の基本から丁寧に説明します。
プリミティブ型は、「数字」「文字」「真偽値(はい・いいえ)」など、ごく単純な値を扱います。一方、参照型は「配列」「オブジェクト」といった、複数の値をまとめたり、複雑なデータを扱うときに使われます。
プリミティブ型と参照型の違いを表で比較
まずは、簡単に違いを表にまとめてみましょう。これで両者の特徴が一目でわかります。特徴 プリミティブ型 参照型 データの種類 単純な値(数値、文字など) 複数の値や構造を持つデータ(配列、オブジェクト) メモリの扱い 値が直接保存される 値の場所(アドレス)を保存し、その場所から値を参照 コピー方法 値がそのままコピーされる 参照(アドレス)がコピーされ、同じデータを指す 変更の影響 コピー後の変更は元に影響なし コピーした参照から変更すると元データも変わる
この表からわかるように、プリミティブ型は値を直接扱うために安全でわかりやすいですが、参照型は複雑なデータを効率よく扱うことができます。
具体的な例で理解しよう!プリミティブ型と参照型の動きの違い
例えば、JavaScriptでの例を考えます。
プリミティブ型の例:
let a = 10;
let b = a;
b = 20;
このとき、aは10のまま変わりません。
参照型の例:
let obj1 = {name: "太郎"};
let obj2 = obj1;
obj2.name = "次郎";
この場合、obj1.nameも"次郎"に変わります。
この違いは、プリミティブ型は値をコピーするため、元の値は変わらないのに対し、参照型は同じ場所を指しているため、どちらかを変えるともう一方も変わるからです。
プログラミングをする上で、この違いを理解することは非常に重要です。間違えると、思わぬバグの原因になることもあるので注意しましょう。
「参照型」という言葉を聞くと、少し難しそうに感じるかもしれませんね。でも実は、参照型は「住所を覚えている」みたいなものなんです。たとえば友達の家に行くときに、住所を教えてもらいますよね?
プログラムでも同じで、参照型はデータ自体ではなく、そのデータが置いてある場所(住所)を覚えています。だから、同じ場所を見ているときに内容を変えると、全部その変化に気づくことができます。
これを理解すると、プログラミングのミスも減って、コードを書くのがもっと楽しくなりますよ!