Java | 基本のデータ型

Java Java
スポンサーリンク

要点まとめ

Javaの基本データ型まとめ

Javaには「基本データ型」と呼ばれる、あらかじめ用意されたデータの種類があります。
変数を使うときは「どんな種類のデータを入れるか」を決める必要があります。


整数を扱う型

  • byte : -128 ~ 127(とても小さい整数)
  • short : -32,768 ~ 32,767(小さめの整数)
  • int : -2,147,483,648 ~ 2,147,483,647(よく使う標準的な整数)
  • long : さらに大きな整数(末尾に L をつけて書く)

👉 基本的には int を使い、すごく大きな数が必要なときだけ long を使う。


小数を扱う型

  • float : 単精度(小数点あり、末尾に F をつける)
  • double : 倍精度(より正確な小数、デフォルトはこちら)

👉 小数は基本的に double を使う。


文字を扱う型

  • char : 1文字を扱う(例: 'a', '花'
    → シングルクォート ' ' で囲む。

真偽値を扱う型

  • boolean : true または false の2種類だけ。

基本型と参照型の違い

  • 基本型 : 値そのものを変数に入れる(上で紹介した型)。
  • 参照型 : 配列や文字列(String)など。変数には「データがある場所のアドレス」が入る。

各型の特徴と使いどころ

もう少し詳しく、「どの型がどういう特徴か」「いつ使うか」を初心者むけに説明します。

整数型(byte / short / int / long)

  • Javaでは「整数を扱う型」が複数あり、扱える数字の範囲がそれぞれ異なります。
  • 通常、整数を扱うなら int 型を使うのが基本です。なぜかと言うと、int が一般的で処理速度・可読性の点からバランスが良いからです。
  • ただし、非常に大きな整数(int の範囲を超える)が必要なときには long 型を使います。 long 型のリテラル(数値そのもの)を記述するときは末尾に L(または l)を付ける必要があります。
  • byteshort 型は「数値の範囲が小さい」「使える場面が限られる」ため、初心者がまず使う機会は少ないですが、メモリや特別な用途のために存在します。

浮動小数点型(float / double)

  • 小数を扱う型として float(32ビット)と double(64ビット)があります。
  • デフォルトでは「3.14」など小数をそのまま書くと double 型として扱われます。なので double 型の変数にはそのまま割り当て可能です。
  • float 型を使いたい場合は、数値リテラルの末尾に F または f を付ける必要があります。例: 3.14F。付けないとコンパイルエラーになります。

文字型(char)

  • char 型は「1文字」を扱うための型で、16ビットの Unicode の文字を扱えます。例えば 'a''花''\uXXXX' のような文字コード記述も可能です。
  • 実際には文字コード(数値)を格納しているので、「文字」そのものを扱う型ですが、数値としての側面もあります。ただし「ただ数値を扱いたくて char を使う」…というのは通常望ましくありません。用途は「”文字”を扱いたいとき」です。

論理型(boolean)

  • boolean 型は「真/偽」の2つの値しか持ちません。 truefalse
  • プログラムの中で「条件が成り立つかどうか」「この操作が成功したかどうか」などを扱うのに使われます。

基本型と参照型の違い

  • Javaには基本データ型(上記のプリミティブ型)と、参照型という型のカテゴリーがあります。参照型には文字列型(String)・配列・クラス・インターフェースなどが含まれます。
  • 違いのポイント
    • 基本型変数には「値そのもの」が入ります。
    • 参照型変数には「値ではなく、その値が格納されている場所を指す参照(アドレス)」が入ります。つまり「実際のデータが格納されているところ」を指すようなものです。
  • この概念は初心者には少し抽象的かもしれませんが、覚えておくと後でクラス・オブジェクト・配列などを学んだときに役立ちます。

サンプルコード

class Sample {
    public static void main(String[] args) {
        int n = 100;
        long l = 12345678910L;
        double d = 3.145;
        float f = 3.145F;
        char c = '本';
        boolean b = true;

        System.out.println("n=" + n);
        System.out.println("l=" + l);
        System.out.println("d=" + d);
        System.out.println("f=" + f);
        System.out.println("c=" + c);
        System.out.println("b=" + b);
    }
}
Java

このコードのポイント:

  • int n = 100; → 整数型 int を使って変数 n に 100 を入れている。
  • long l = 12345678910L; → 非常に大きな整数なので long 型にして末尾に L を付けている。
  • double d = 3.145; → 小数点を扱う double 型にしている。
  • float f = 3.145F;float 型を使うために末尾に F を付けて宣言。
  • char c = '本'; → 1文字(この場合「本」)を char 型に。
  • boolean b = true; → 真偽値を boolean 型に。
  • それぞれ System.out.println(...) で画面に変数の中身を表示している。

ポイントまとめ

  • 整数は基本 int、小数は基本 double を使う。
  • LF をつけるのは「long」や「float」を明示するため。
  • 文字は ' '、文字列は " " で書く。
  • boolean は条件分岐(if文など)でよく使う。

こうして見ると、Javaの基本データ型は「数値(整数・小数)」「文字」「真偽値」の3グループに分けて覚えるとスッキリしますね。

👉 次のステップとしては「変数と型を組み合わせてif文やfor文で使う」練習をすると理解が深まります。


Javaの基本データ型の考え方

初めてでもわかるように、「何を表す型なのか」「どう書くのか」「よくあるつまずき」をセットで解説します。型は「その変数に入るデータの種類」を決める約束事です。まずは迷ったら何を使うのか、使い分けのコツから掴みましょう。


よく使う型の使い分け

  • 整数(int/long): 数えられるもの。年齢、個数、IDなど。基本は int。とても大きい数が必要なら long。
  • 小数(double/float): 途中に小数点が入るもの。価格、平均値など。基本は double。
  • 文字(char): 1文字だけ。例: ‘A’、’花’。英数字だけでなく日本語の1文字もOK。
  • 真偽(boolean): 「はい/いいえ」を表す。true か false のどちらか。

迷ったら「整数→int」「小数→double」「真偽→boolean」から始めれば大丈夫です。


それぞれの型を、例題で理解する

整数型(int / long)

int apples = 12;      // りんごが12個
long population = 140000000L; // 人口のような超大きい数は long。末尾に L が必要
Java
  • ポイント:
    • 基本は int を使う。 数が爆発的に大きい(桁が多い)なら long。
    • long の数値リテラルは末尾に L。 つけないと int とみなされてエラーや桁あふれの原因に。
  • 例題:
    • ラーメン屋の今日の来客数 → int
    • 世界の総人口 → long(数が int の範囲を超えるため)

小数型(double / float)

double price = 980.5; // 価格などは double が基本
float rate = 0.75F;   // float を使うなら末尾に F が必要
Java
  • ポイント:
    • double が標準。 計算の精度が高く、多くの場面で向いています。
    • float を使うなら F を付ける。 付けないと double とみなされ、代入でエラーになります。
  • 例題:
    • テストの平均点 78.6 点 → double
    • ゲームのキャラ速度(軽量データ) → float(ただし初心者はまず double でOK)

文字型(char)と文字列(String)

char grade = 'A';          // 1文字。必ずシングルクォート ' '
char kanji = '花';
String name = "Tanaka";    // 複数文字は String。ダブルクォート " "
Java
  • ポイント:
    • char は1文字だけ。 ‘AB’ は2文字なので間違い。
    • 複数文字や文章は String を使う。 文字列連結や表示に便利。
  • 例題:
    • 性別コードを1文字で管理(’M’ / ‘F’) → char
    • 氏名やメール文面 → String

真偽型(boolean)

boolean isLoggedIn = true;     // ログインしているか
boolean hasCoupon = false;     // クーポンを持っているか
Java
  • ポイント:
    • 条件分岐と相性抜群。 if, while でよく使う。
    • true / false しかない。 「はい/いいえ」をスッキリ表現。
  • 例題:
    • 在庫ありか? → boolean
    • 年齢が20歳以上か? → 条件式(age >= 20)の結果は boolean

よくあるつまずきと回避テク

  • 整数と小数の区別:
    • ラベル: どちらを使う?
    • 説明: 12 は整数、12.0 は小数。小数が1つでも含まれるなら double で。
  • リテラルの末尾 L / F:
    • ラベル: 付け忘れ注意
    • 説明: long には L、float には F。付けないと別の型とみなされます。
  • 文字と文字列のクォート:
    • ラベル: ‘ と ” の違い
    • 説明: char は ‘A’ のようにシングルクォート。String は “Hello” のようにダブルクォート。
  • 桁あふれ(オーバーフロー):
    • ラベル: 大きすぎる数
    • 説明: int の範囲外の数は long を使う。範囲に不安があれば long を選ぶ。

まとまったサンプルと出力

class BasicTypesSample {
    public static void main(String[] args) {
        int count = 42;
        long distance = 1234567890123L;
        double average = 86.75;
        float taxRate = 0.1F;
        char initial = 'T';
        String title = "Java入門";
        boolean isMember = true;

        System.out.println("count = " + count);
        System.out.println("distance = " + distance);
        System.out.println("average = " + average);
        System.out.println("taxRate = " + taxRate);
        System.out.println("initial = " + initial);
        System.out.println("title = " + title);
        System.out.println("isMember = " + isMember);
    }
}
Java

その場で解ける例題(解答付き)

例題1:型を選ぶ

  • 問題: 次のデータに合う型を選んでください。
    • 年齢 27
    • 消費税率 0.1
    • 会員かどうか(はい/いいえ)
    • クラスの評価 ‘A’
    • 総再生回数 5,000,000,000
  • 解答:
    • 年齢: int
    • 消費税率: double
    • 会員かどうか: boolean
    • クラスの評価: char
    • 総再生回数: long(とても大きい数なので)

例題2:正しいリテラルに直す

  • 問題: 次のコードの間違いを直してください。 long big = 3000000000; // エラー float rate = 0.25; // エラー char two = "AB"; // エラー
  • 解答: long big = 3000000000L; // long は L を付ける float rate = 0.25F; // float は F を付ける(付けないと double) char two = 'A'; // char は1文字のみ。2文字なら String: "AB"

例題3:if文で boolean を使う

int age = 19;
boolean canDrink = age >= 20; // 日本の飲酒可能年齢
if (canDrink) {
    System.out.println("飲酒可");
} else {
    System.out.println("飲酒不可");
}
Java
  • ポイント:
    • 条件式の結果は boolean。 そのまま if に渡せます。
    • 比較演算子: ==, !=, >, >=, <, <= を使います。

次の一歩(練習メニュー)

  • 型を意識した変数宣言:
    • 1日の歩数、睡眠時間(小数)、ニックネーム、通知のON/OFF をそれぞれ適切な型で宣言してみる。
  • 型変換に触れる:
    • int と double を混ぜた計算の結果は double になることを確認。
    • 必要なら (int) 3.9 のようなキャストで整数に切り捨てできる。
  • 入出力で試す:
    • System.out.println で値を表示し、足し算・比較をして結果がどう変わるか見る。
Java
スポンサーリンク
シェアする
@lifehackerをフォローする
スポンサーリンク
タイトルとURLをコピーしました