カテゴリ: Javaの変数・データ型 更新日: 2025/03/25

Java の整数型(int, long)を使って計算しよう

067
Java の整数型(int, long)を使って計算しよう

新人と先輩の会話形式で理解しよう

新人

「Java の整数型って何ですか?どんなときに使うんでしょうか?」

先輩

「整数型とは、Java で整数を扱うためのデータ型のことだよ。たとえば、int 型や long 型があるんだ。」

新人

「整数を使うって、具体的にはどういう場面で役立つんですか?」

先輩

「たとえば、商品の価格を計算したり、人数を数えたりする場合に整数型を使うよ。詳しく見ていこう!」

1. 整数型とは?(基本的な説明)

1. 整数型とは?(基本的な説明)
1. 整数型とは?(基本的な説明)

整数型とは、小数点を含まない数値を扱うためのデータ型です。Java では、主に int 型と long 型の 2 種類の整数型がよく使われます。

int 型と long 型の基本

  • int 型 - 32 ビットの整数型(-2,147,483,648 から 2,147,483,647 まで)
  • long 型 - 64 ビットの整数型(非常に大きな数を扱える)

たとえば、次のように整数型の変数を使います。


public class IntegerExample {
    public static void main(String[] args) {
        int apples = 10;
        long distance = 10000000000L;
        
        System.out.println("りんごの数: " + apples);
        System.out.println("距離: " + distance + "メートル");
    }
}

2. int 型と long 型の違い(使い分けのポイント)

2. int 型と long 型の違い(使い分けのポイント)
2. int 型と long 型の違い(使い分けのポイント)

int 型と long 型の違いは、扱える数の範囲です。一般的に、ほとんどの計算は int 型で十分ですが、大きな数を扱う場合は long 型を使います。

int 型を使う場面

  • 商品の価格や個数など、そこまで大きな数値でない場合
  • テストの点数やカウンターの値など

public class IntExample {
    public static void main(String[] args) {
        int score = 85;
        int price = 1200;
        
        System.out.println("テストの点数: " + score);
        System.out.println("商品の価格: " + price + "円");
    }
}

long 型を使う場面

  • 銀行の残高の計算など、大きな数を扱う場合
  • 時間や距離など、桁数の大きいデータを管理する場合

public class LongExample {
    public static void main(String[] args) {
        long worldPopulation = 7800000000L;
        long lightSpeed = 299792458L;
        
        System.out.println("世界の人口: " + worldPopulation + "人");
        System.out.println("光の速度: " + lightSpeed + "メートル/秒");
    }
}

3. int 型の基本的な使い方(サンプルコード)

3. int 型の基本的な使い方(サンプルコード)
3. int 型の基本的な使い方(サンプルコード)

int 型は Java のプログラムで最もよく使われる整数型です。int 型の変数を宣言し、値を代入して使う方法を見てみましょう。

int 型の変数を使う

次のプログラムは、int 型の変数を宣言し、計算を行うサンプルです。


public class IntExample {
    public static void main(String[] args) {
        int num1 = 10;
        int num2 = 20;
        int sum = num1 + num2;
        
        System.out.println("合計: " + sum);
    }
}

int 型の計算

int 型の変数を使って四則演算を行うことができます。


public class IntCalculation {
    public static void main(String[] args) {
        int a = 15;
        int b = 3;
        
        System.out.println("足し算: " + (a + b));
        System.out.println("引き算: " + (a - b));
        System.out.println("掛け算: " + (a * b));
        System.out.println("割り算: " + (a / b));
    }
}

4. long 型を使う場面(int では足りない場合)

4. long 型を使う場面(int では足りない場合)
4. long 型を使う場面(int では足りない場合)

int 型では扱える数の範囲が決まっており、大きな数値を扱う場合は long 型を使う必要があります。

int 型では足りない場合の例

以下のコードは int 型の最大値を超える数値を扱おうとした場合のエラーを示します。


public class IntOverflowExample {
    public static void main(String[] args) {
        int bigNumber = 2147483647; // int の最大値
        int overflow = bigNumber + 1; // 範囲を超える
        
        System.out.println("値: " + overflow);
    }
}

このコードを実行すると、正しく計算できず、意図しない値になります。そのため、大きな数を扱う場合は long 型を使います。

long 型を使う例

次のプログラムでは、long 型を使って安全に大きな数値を扱います。


public class LongExample {
    public static void main(String[] args) {
        long bigNumber = 2147483648L; // int の範囲を超えるため L をつける
        long distance = 15000000000L; // 長い距離を表す
        
        System.out.println("大きな数: " + bigNumber);
        System.out.println("距離: " + distance + "メートル");
    }
}

5. 整数型を使った簡単な計算プログラム

5. 整数型を使った簡単な計算プログラム
5. 整数型を使った簡単な計算プログラム

整数型を使って、簡単な計算を行うプログラムを作成してみましょう。

商品の合計金額を計算する

次のプログラムでは、int 型を使って商品の合計金額を計算します。


public class PriceCalculator {
    public static void main(String[] args) {
        int pricePerItem = 500; // 商品の価格
        int quantity = 3; // 購入数
        int totalPrice = pricePerItem * quantity; // 合計金額
        
        System.out.println("合計金額: " + totalPrice + "円");
    }
}

long 型を使った大きな計算

次のプログラムでは、long 型を使って地球から太陽までの光の移動時間を計算します。


public class LightSpeedCalculation {
    public static void main(String[] args) {
        long lightSpeed = 299792458L; // 光の速度(メートル/秒)
        long time = 500L; // 500 秒後
        
        long distance = lightSpeed * time;
        
        System.out.println("光が " + time + " 秒で進む距離: " + distance + " メートル");
    }
}

このように、整数型を使ってさまざまな計算ができます。用途に応じて int 型と long 型を適切に使い分けましょう。

6. 整数型の計算時の注意点(オーバーフローなど)

6. 整数型の計算時の注意点(オーバーフローなど)
6. 整数型の計算時の注意点(オーバーフローなど)

整数型の計算では、いくつかの注意点があります。特に気をつけたいのが「オーバーフロー」と「ゼロ除算(ゼロで割ること)」です。

オーバーフローとは?

オーバーフローとは、変数の範囲を超える値を扱ったときに起こる問題です。例えば、int 型の最大値(2,147,483,647)を超える計算をすると、正しくない値になってしまいます。


public class OverflowExample {
    public static void main(String[] args) {
        int maxInt = 2147483647;
        int result = maxInt + 1; // 最大値を超える
        System.out.println("オーバーフロー後の値: " + result);
    }
}

このコードを実行すると、-2147483648 という意図しない結果になります。これは、整数型が循環する(最大値を超えると最小値に戻る)ためです。

ゼロ除算に注意

整数を計算するとき、ゼロで割るとエラーが発生します。


public class DivisionByZeroExample {
    public static void main(String[] args) {
        int number = 10;
        int zero = 0;
        int result = number / zero; // ここでエラー
        System.out.println("結果: " + result);
    }
}

このプログラムを実行すると、ArithmeticException: / by zero というエラーが発生します。ゼロで割る処理を避けるため、ゼロかどうかを事前に確認することが重要です。

7. 整数型を使うときのベストプラクティス(適切な選び方)

7. 整数型を使うときのベストプラクティス(適切な選び方)
7. 整数型を使うときのベストプラクティス(適切な選び方)

整数型を使うときは、状況に応じて適切な型を選ぶことが大切です。以下のポイントを参考にしましょう。

int を使うべき場面

  • 変数に格納する値が -2,147,483,648 から 2,147,483,647 の範囲内である場合
  • 計算が比較的シンプルで、データが大きくならない場合
  • プログラムのメモリ使用量を抑えたい場合

long を使うべき場面

  • 扱う数値が int の範囲を超える可能性がある場合
  • 銀行の残高や科学計算など、大きな数値を使う必要がある場合
  • 時間や距離などのデータを扱う場合

整数型の選び方の例

用途 適切なデータ型
商品の価格、カウント int
世界人口、光の速度 long
テストの点数 int
距離(メートル単位) long

8. 練習問題:整数型を使った簡単な計算プログラムを作ろう

8. 練習問題:整数型を使った簡単な計算プログラムを作ろう
8. 練習問題:整数型を使った簡単な計算プログラムを作ろう

ここまで学んだ整数型の使い方を実践するために、簡単な練習問題を解いてみましょう。

問題 1: 商品の合計金額を計算しよう

商品の価格と個数を変数に保存し、合計金額を計算するプログラムを作成してください。


public class ShoppingCalculator {
    public static void main(String[] args) {
        int price = 1200; // 商品の価格
        int quantity = 5; // 購入数
        int totalPrice = price * quantity; // 合計金額を計算
        
        System.out.println("合計金額: " + totalPrice + "円");
    }
}

問題 2: long を使って地球の周りを何周できるか計算しよう

飛行機が 1 回のフライトで 10,000 キロメートル移動するとします。地球の赤道の長さが約 40,000 キロメートルなので、何周できるかを計算するプログラムを作ってください。


public class EarthCircumnavigation {
    public static void main(String[] args) {
        long earthCircumference = 40000000L; // 地球の赤道の長さ(メートル)
        long flightDistance = 10000L; // 1 回のフライトで進む距離
        
        long numOfTrips = earthCircumference / flightDistance; // 何周できるか
        
        System.out.println("地球を " + numOfTrips + " 周できます!");
    }
}

問題 3: 数値を 2 倍にするプログラムを作ろう

ユーザーが入力した数値を 2 倍にするプログラムを作ってみましょう。


public class DoubleNumber {
    public static void main(String[] args) {
        int number = 25; // ユーザーが入力した値
        int doubled = number * 2; // 2 倍にする
        
        System.out.println("2 倍の値: " + doubled);
    }
}

これらの練習問題を通じて、整数型の基本をしっかり理解しましょう!

Javaの変数・データ型の一覧へ
新着記事
IAM Identity Centerの許可セットとポリシーの関係を解説
IAM Identity Centerの許可セットとポリシーの関係を初心者向けにわかりやすく解説!
Java の正規表現で「数字」や「英字」だけをチェックする方法
Javaの正規表現で「数字」や「英字」だけをチェックする方法を初心者向けに完全解説
Java で正規表現を使う方法(Pattern クラスと Matcher クラス)
Javaで正規表現を使う方法を完全解説!PatternクラスとMatcherクラスを初心者向けにやさしく説明
FlutterでQRコードの生成・読み取りをする方法
FlutterでQRコードの生成・読み取りを実装する方法!初心者でもできるQRアプリ開発
人気記事
インスタンスタイプの料金比較と最適な選び方(最新2025年版)
AWSのインスタンスタイプの料金比較と最適な選び方【2025年最新版】
【AWS】VPCの料金体系まとめ!無料枠・通信費・各種サービスごとの料金を徹底解説
【AWS】VPCの料金体系まとめ!無料枠・通信費・各種サービスごとの料金を徹底解説
【AWS】VPCエンドポイントとは?種類・使い方・S3連携まで完全解説
【AWS】VPCエンドポイントとは?種類・使い方・S3連携まで完全解説
【AWS】s3 cpコマンド完全ガイド!基本・recursive・exclude/includeも解説
【AWS】s3 cpコマンド完全ガイド!基本・recursive・exclude/includeも解説