カテゴリ: JavaSilver試験対策 更新日: 2026/06/05

Javaの基本データ型を完全解説!初心者向けにわかりやすく学ぼう

004
Javaの基本データ型(プリミティブ型)

先生と生徒の会話形式で理解しよう

生徒

「Javaで真偽値を扱いたいんですけど、どうやって変数を定義すればいいですか?」

先生

「Javaでは、真偽値を扱うためにboolean型を使います。例えば、truefalseを値として持つ変数を作ることができます。」

生徒

「C言語とかで見たことがあるboolとは違うんですね!」

先生

「そうですね!Javaではbool型は存在せず、代わりにbooleanを使うので注意が必要です。それでは、具体的に基本データ型について解説しましょう!」

1. Javaの基本データ型とは?

1. Javaの基本データ型とは?
1. Javaの基本データ型とは?

Javaには、データの種類を表す「データ型」があり、それによってプログラムの動作が変わります。基本データ型は「プリミティブ型」とも呼ばれ、Javaでは以下の8種類があります:

  • boolean型:真偽値を表します(例:truefalse)。
  • char型:1文字のUnicode文字を表します(例:'A')。
  • byte型:8ビットの整数(範囲:-128 ~ 127)。
  • short型:16ビットの整数(範囲:-32,768 ~ 32,767)。
  • int型:32ビットの整数(範囲:-2,147,483,648 ~ 2,147,483,647)。
  • long型:64ビットの整数(範囲:非常に広い)。
  • float型:32ビットの単精度浮動小数点数。
  • double型:64ビットの倍精度浮動小数点数。

このように、プリミティブ型は値そのものを扱い、データの種類ごとに効率的な処理が可能です。

2. プリミティブ型を正しく使うポイント

2. プリミティブ型を正しく使うポイント
2. プリミティブ型を正しく使うポイント

Javaでは、各プリミティブ型は決められたサイズと範囲を持っています。プログラム中で使用する際には、以下のような点に注意しましょう:

  • 適切な型を選ぶことでメモリの使用を最適化できます。
  • boolean型は論理的な条件を扱う場合に必須です。
  • 型が異なるデータ同士を演算する場合、自動的に型変換(暗黙的キャスト)が行われますが、注意が必要です。

3. サンプルプログラムで学ぶコンパイルエラー

3. サンプルプログラムで学ぶコンパイルエラー
3. サンプルプログラムで学ぶコンパイルエラー

以下のコードは、間違った型を使用しているためコンパイルエラーが発生します。


public class PrimitiveTypeExample {
    public static void main(String[] args) {
        int number = 10;
        bool isAvailable = true; // ここでエラーが発生します
        if (isAvailable) {
            System.out.println("値: " + number);
        }
    }
}

このコードをコンパイルしようとすると、「bool型が存在しない」というエラーが発生します。Javaではboolではなくbooleanを使用する必要があります。

修正版のコードを見てみましょう:


public class PrimitiveTypeExample {
    public static void main(String[] args) {
        int number = 10;
        boolean isAvailable = true; // 正しい型
        if (isAvailable) {
            System.out.println("値: " + number);
        }
    }
}

この修正版コードでは、boolean型を使用することで正しく動作します。

Javaをこれから始める人や、 オブジェクト指向の考え方を基礎から理解したい人には、 定番の入門書がこちらです。

スッキリわかるJava入門 第4版をAmazonで見る

※ Amazon広告リンク

4. コンパイルエラーを避けるには?

4. コンパイルエラーを避けるには?
4. コンパイルエラーを避けるには?

Javaでプログラムを書く際、データ型のミスを避けるためには以下のポイントを守りましょう:

  • Javaの8つのプリミティブ型を正確に覚える。
  • 特定の用途に適した型を使用する(例:真偽値にはboolean、整数にはint)。
  • 他の言語の知識をそのまま適用しない。Java独自の仕様を理解することが重要です。

5. 整数型の使い分けとメモリサイズ

5. 整数型の使い分けとメモリサイズ
5. 整数型の使い分けとメモリサイズ

Javaの整数型には4つの種類がありますが、どれを使うべきか迷うこともあるでしょう。基本的には int を使い、より大きな数値を扱う必要がある場合に long を選択するのが一般的です。

  • byte / short: メモリを極限まで節約したい大量のデータ(画像処理のピクセルデータなど)を扱う際に使用されます。
  • int: 最も汎用的で、計算速度も最適化されているため、通常のカウント処理などに適しています。
  • long: 21億を超える数値(世界人口や大きな金額など)を扱う際に必須となります。

初心者のうちは、まずは int から使い始め、コンパイルエラーで「範囲外です」と警告が出たら long を検討するという流れで学習を進めるとスムーズです。

6. 浮動小数点数(floatとdouble)の注意点

6. 浮動小数点数(floatとdouble)の注意点
6. 浮動小数点数(floatとdouble)の注意点

小数点を扱う型には floatdouble があります。Javaでは、小数のリテラル(例:3.14)はデフォルトで double 型として扱われるため、float 型を使う際には少し工夫が必要です。


public class FloatDoubleExample {
    public static void main(String[] args) {
        double pi = 3.14159; // 通常はこちらを使用
        // float f = 3.14;   // エラー:doubleからfloatへは自動変換できない
        float f = 3.14f;     // 末尾に f を付けることで float と認めてもらえる
        
        System.out.println("doubleの値: " + pi);
        System.out.println("floatの値: " + f);
    }
}

2026年現在の開発現場でも、精度が高くエラーが起きにくい double が推奨されています。特別な理由がない限りは double を使うのが「Javaらしい」書き方と言えるでしょう。

7. 文字を扱う char 型と String 型の違い

7. 文字を扱う char 型と String 型の違い
7. 文字を扱う char 型と String 型の違い

最後に、文字を扱う char 型について触れておきましょう。char は厳密には「1文字」だけを扱うプリミティブ型です。よく使われる「文字列(複数の文字)」である String とは扱いが異なります。

  • char型: シングルクォーテーション ' ' で囲みます。(例:'A'
  • String型: ダブルクォーテーション " " で囲みます。(例:"Hello"

public class CharExample {
    public static void main(String[] args) {
        char initial = 'J'; // 1文字だけ
        String language = "Java"; // 文字列(これはプリミティブ型ではありません)
        
        System.out.println(initial + " is for " + language);
    }
}

char 型は内部的に数値(Unicode)として保持されているため、実は計算に使用することも可能です。文字と文字列を正しく使い分けることが、Javaマスターへの第一歩になります。

まとめ

まとめ
まとめ

この記事では、Javaの基本データ型について詳しく学びました。Javaのプリミティブ型には、booleancharbyteshortintlongfloatdoubleの8種類があり、それぞれが特定のデータを効率的に扱うために設計されています。特に注意すべき点として、型の選び方や使用時の範囲の確認が挙げられます。

また、データ型の誤りによるコンパイルエラーについても触れました。例えば、bool型を使用しようとするとエラーが発生することや、型変換時の暗黙的キャストによる不具合が挙げられます。Javaでは、型安全性が高いため、事前に適切なデータ型を選んでコードを書くことが重要です。

以下に、学んだ知識を活用するための追加のサンプルコードを紹介します。

データ型の選び方を確認するプログラム例


public class DataTypeExample {
    public static void main(String[] args) {
        // プリミティブ型の例
        boolean isActive = true;
        char grade = 'A';
        byte smallNumber = 120;
        short mediumNumber = 30000;
        int largeNumber = 1_000_000;
        long veryLargeNumber = 3_000_000_000L;
        float pi = 3.14F;
        double precisePi = 3.141592653589793;

        // 出力結果を確認
        System.out.println("boolean型: " + isActive);
        System.out.println("char型: " + grade);
        System.out.println("byte型: " + smallNumber);
        System.out.println("short型: " + mediumNumber);
        System.out.println("int型: " + largeNumber);
        System.out.println("long型: " + veryLargeNumber);
        System.out.println("float型: " + pi);
        System.out.println("double型: " + precisePi);
    }
}

このコードでは、各プリミティブ型の使い方と出力結果を確認できます。これを実行することで、それぞれの型の用途や特性をより理解することができるでしょう。

先生と生徒の振り返り会話

生徒

「先生、データ型の違いについてよくわかりました!特にbooleanbyteの使い分けがポイントなんですね。」

先生

「そうです。用途に応じて適切な型を選ぶことで、効率的にプログラムを動かすことができます。特に大きなデータを扱う場合はlongdoubleが活躍します。」

生徒

「型変換についても注意が必要ですね。次回はその部分を詳しく学びたいです!」

先生

「いいですね!次回は型変換とキャストについて深掘りしましょう。実際に手を動かして学んでいくと、より理解が深まりますよ!」

この記事を読んだ人からの質問

この記事を読んだ人からの質問
この記事を読んだ人からの質問

プログラミング初心者からのよくある疑問/質問を解決します

Javaの基本データ型にはどんな種類がありますか?

Javaの基本データ型(プリミティブ型)には、boolean、char、byte、short、int、long、float、doubleの8種類があります。それぞれが異なるデータを効率的に処理するために設計されています。

Javaで真偽値を扱うときはどのデータ型を使えばいいですか?

Javaで真偽値を扱う場合はboolean型を使用します。値としてはtrueまたはfalseを使い、条件分岐などによく用いられます。

Javaにbool型はありますか?C言語のboolとは違うのですか?

Javaにはbool型は存在せず、boolean型を使います。C言語のようにboolと書くとコンパイルエラーになるので注意が必要です。
JavaSilver試験対策の一覧へ
新着記事
Flutter
Flutterでのリポジトリパターンの実装例
Flutterでリポジトリパターンを実装する方法を完全解説!初心者向けアーキテクチャ設計入門
Java
Java の Objects クラスを使って null チェックを簡単にする方法
JavaのObjectsクラスの使い方を完全ガイド!nullチェックを簡単・安全に行う方法
Java
Java の UUID クラスを使って一意の識別子を作成する方法
JavaのUUIDクラスの使い方を完全ガイド!初心者でもわかる一意な識別子の作成方法
Java
Java の古い日付クラス(Date, Calendar)と新しい日付 API の違い
JavaのDateとCalendarと新しい日付APIの違いとは?初心者向け完全ガイド
人気記事
Java
Java の Random クラスを使ってランダムな数値を生成する方法
JavaのRandomクラスの使い方を完全ガイド!初心者でもわかる乱数生成
Java
Java の getter メソッドと setter メソッドの使い方
Javaのgetterメソッドとsetterメソッドの使い方を完全ガイド!初心者でもわかるアクセス方法
AWS
【AWS】RDSの料金体系まとめ!ざっくり理解・高いと感じる理由も解説
【AWS】RDSの料金体系まとめ!ざっくり理解・高いと感じる理由も解説
AWS
【AWS】VPCとは?初心者向けに仕組み・用途・できることをわかりやすく解説
【AWS】VPCとは?初心者向けに仕組み・用途・できることをわかりやすく解説

🔌 USBポート不足を解消

Type-C 1本で拡張。
開発・作業環境を一気に快適に

UGREEN USB-Cハブを見る

※ Amazon広告リンク