プログラム

プリミティブ型とは

プリミティブ型

プリミティブ型(英:primitive data type)とは、プログラミング言語が提供する基本的なデータ型のことです。

言語により用意されている型の種類は異なるが、整数を格納する整数型や小数を含む数値を格納する浮動小数点型、真(true)、偽(false)を格納する論理型などが提供されています。

Javaのプリミティブ型

Javaのプリミティブ型には次のようなものがあります。

データ型読み方格納できる値
byteバイト-128 ~ 127の整数
shortショート-32768 ~ 32767の整数
intイント-2147483648 ~ 2147483647の整数
longロング-9223372036854775808 ~ 9223372036854775807の整数
floatフロート±3.40282347E+38 ~ ±1.40239846E-45の浮動小数点型
doubleダブル±1.79769313486231570E+308 ~ ±4.94065645841246544E-324の浮動小数点型
booleanブーリアンtrue または falseの論理型
charチャー または キャラ文字

プリミティブ型のデータの持ち方

例えば、Javaのデータ型は「プリミティブ型」と「参照型」の2つに分かれています。この2つの型の違いはデータの持ち方が違います。

参照型とは、配列やクラスのようにnew演算子を用いてオブジェクトを生成してから使用するデータ型のことです。

プリミティブ型は、メモリ上に直接値が格納されています。

プリミティブ型のデータの持ち方

そのため、プリミティブ型のデータを「int b = a」のように別のプリミティブ型に代入すると、次のようにメモリ上の値をコピーします。結果、変数aと変数bは別の値(実体)を参照しています。

プリミティブ型のデータをコピー

 

それに対し、参照型は値(実体)を格納しているメモリ上のアドレスを参照しています。

参照型のデータの持ち方

そのため、参照型のデータを「int[] b = a」のように別のプリミティブ型に代入すると、次のようにメモリ上の値をコピーします。結果、配列aと配列bは同の値(実体)を参照しています。

参照型をコピー

プリミティブ型と参照型についての詳細は以下の記事で紹介しています。

helpful