カテゴリ: Java 更新日: 2026/01/16
PR
独学でJavaを学んでいる方向け
「実務レベルに到達できるか不安」「1人だと詰まることが多い」場合は、 実践重視で学べる環境を一度確認しておくのも一つの手です。
EBAエデュケーション |学習内容・サポートを見る

JavaのRandomクラスのnextFloatメソッドを完全ガイド!初心者でもわかる

Random のnextFloatメソッド
Random のnextFloatメソッド

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

生徒

「Javaで0以上1未満のランダムな少数ってどうやって作るんですか?」

先生

「それならRandomクラスのnextFloatメソッドを使うといいですよ。Javaで乱数を扱うときにはこのクラスがとても便利です。」

生徒

「じゃあnextFloatって何を返すんですか?」

先生

「0.0以上1.0未満のfloat型の値をランダムに返してくれます。それでは詳しい使い方を見ていきましょう。」

1. Randomクラスとは何か?

1. Randomクラスとは何か?
1. Randomクラスとは何か?

JavaのRandomクラスは、乱数を生成するためのクラスで、java.utilパッケージに含まれています。このクラスを使うことで、整数・小数・真偽値など、さまざまなタイプのランダムな値を簡単に生成できます。

たとえばゲーム開発や抽選アプリなど、ランダム性を取り入れたいプログラムではよく使われる重要なクラスです。

2. Randomクラスの基本的な使い方

2. Randomクラスの基本的な使い方
2. Randomクラスの基本的な使い方

まず、Randomクラスを使うにはインスタンスを生成する必要があります。以下のように書くことで、ランダム値を扱う準備ができます。


import java.util.Random;

public class RandomInit {
    public static void main(String[] args) {
        Random random = new Random();
    }
}

このようにRandomクラスのインスタンスを作成すれば、以降でnextFloatなどのメソッドが利用できます。

PR

将来を見据えて、+αのスキルを身につけたい方へ

JavaやLinuxを学んでいても、「このままで市場価値は上がるのか」 「キャリアの選択肢を広げたい」と感じる方は少なくありません。

AIを学ぶならアイデミープレミアム

3. nextFloatメソッドとは?

3. nextFloatメソッドとは?
3. nextFloatメソッドとは?

nextFloatメソッドは、0.0以上1.0未満float型の乱数を返してくれるメソッドです。

Javaにおけるfloatは、単精度の浮動小数点数であり、doubleよりもメモリを節約できます。数値の精度はやや低くなりますが、多くの場面では十分に使えます。

4. nextFloatの使い方とサンプル

4. nextFloatの使い方とサンプル
4. nextFloatの使い方とサンプル

nextFloatの使い方はとても簡単です。以下のサンプルコードを見てください。


import java.util.Random;

public class FloatRandomExample {
    public static void main(String[] args) {
        Random random = new Random();
        float value = random.nextFloat();
        System.out.println("ランダムなfloat値:" + value);
    }
}

このコードを実行すると、毎回異なるfloat型の値が表示されます。0.0以上1.0未満の範囲でランダムな小数です。


ランダムなfloat値:0.3459325

5. nextFloatの用途と実例

5. nextFloatの用途と実例
5. nextFloatの用途と実例

nextFloatは、ゲームでランダムな動作を決めたり、確率的な処理を行うときにとても便利です。たとえば、30%の確率で特別なイベントを起こすような処理に使うことができます。


import java.util.Random;

public class EventChance {
    public static void main(String[] args) {
        Random random = new Random();
        float chance = random.nextFloat();
        if (chance < 0.3f) {
            System.out.println("イベント発生!");
        } else {
            System.out.println("通常処理");
        }
    }
}

このように、nextFloatで得られる値を使って、確率的な条件分岐を実現できます。

6. nextFloatとnextDoubleの違い

6. nextFloatとnextDoubleの違い
6. nextFloatとnextDoubleの違い

JavaにはnextDoubleという似たようなメソッドもあります。こちらはdouble型で、より高精度な0.0以上1.0未満の値を返します。

用途によってfloatdoubleを使い分けることが重要です。floatを使うとメモリ使用量が少なくなりますが、doubleの方が精度が高く、科学計算などに向いています。

7. 0から指定した範囲のfloat乱数を作る方法

7. 0から指定した範囲のfloat乱数を作る方法
7. 0から指定した範囲のfloat乱数を作る方法

nextFloatで得られる値は0.0以上1.0未満なので、任意の範囲のfloat値を作りたいときには次のように計算します。

たとえば、0.0〜5.0の範囲でランダムなfloat値を得たい場合:


import java.util.Random;

public class FloatRange {
    public static void main(String[] args) {
        Random random = new Random();
        float value = random.nextFloat() * 5.0f;
        System.out.println("0から5の間の値:" + value);
    }
}

このように、nextFloat()の結果に任意の数値を掛けることで、必要な範囲に拡張できます。

8. nextFloatの注意点とよくあるミス

8. nextFloatの注意点とよくあるミス
8. nextFloatの注意点とよくあるミス

nextFloat1.0を含まないため、条件分岐で== 1.0fのような判定をすると、常にfalseになってしまう点に注意しましょう。

また、nextFloat() * 100のように整数として扱う際には、必要に応じてMath.round()などを使って明示的に型変換するようにしましょう。

9. まとめ

9. まとめ
9. まとめ

Javaで乱数を生成する方法はさまざまありますが、その中でもRandomクラスのnextFloatメソッドは、0.0以上1.0未満のfloat型の小数値を手軽に取得できる非常に便利な機能です。特に、ランダムな確率処理やゲーム、シミュレーションなどの開発では欠かせないテクニックとなります。

本記事では、JavaのRandomクラスの基本的な使い方をはじめ、nextFloatメソッドの使い方や活用方法、さらにnextDoubleとの違いや注意点など、初心者がつまずきやすいポイントも丁寧に解説しました。

nextFloatメソッドを使えば、確率でイベントを分岐させたり、任意の範囲のランダムな小数値を生成することができます。たとえば、0.0〜10.0の間のfloat乱数を生成したい場合は以下のようなコードになります。


import java.util.Random;

public class CustomRangeFloat {
    public static void main(String[] args) {
        Random random = new Random();
        float min = 0.0f;
        float max = 10.0f;
        float result = random.nextFloat() * (max - min) + min;
        System.out.println("0〜10の範囲の乱数:" + result);
    }
}

このコードでは、任意の範囲のfloat値を生成しています。範囲を変えれば、0.0〜100.0や10.0〜20.0など自由自在にカスタマイズ可能です。

nextFloatメソッドを効果的に使うことで、Javaプログラムに柔軟なランダム性を取り入れることができ、ユーザー体験の向上や処理の幅の拡大につながります。特に確率処理は、ゲーム開発・抽選アプリ・UI演出など多くの分野で応用されており、これからJavaを学ぶ上で覚えておくべき基礎知識の一つです。

また、float型の特性や計算の注意点についても理解することで、より精度の高いプログラムが作れるようになります。初心者のうちはdoubleとの違いが曖昧になりがちですが、今のうちから型の選択に意識を向けておくことが大切です。

今後、さらに乱数の応用的な使い方を学ぶ際にも、今回のRandomクラスとnextFloatの知識がベースになります。ぜひ繰り返しコードを書いて、確かなスキルにしていきましょう。

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

生徒

nextFloatを使えば、0から1未満のランダムなfloatが簡単に作れるんですね!」

先生

「そうですね。さらに、数値を掛けたり加えたりすれば、任意の範囲の乱数も作れるようになりますよ。」

生徒

「たとえば0から10の範囲とか、10から20の範囲とかもできるんですよね?」

先生

「はい、random.nextFloat() * (max - min) + minの形を覚えておくと便利ですよ。floatの性質や精度にも注意して使いましょう。」

生徒

nextDoubleとの違いも学べてよかったです。用途に応じてfloatとdoubleを使い分けるようにします!」

先生

「それが大切です!乱数の基礎はこれでバッチリですね。次は応用的な使い方にも挑戦してみましょう!」

カテゴリの一覧へ
新着記事
PR

JavaやLinuxの検証環境に
低コストで使えるVPS

JavaのRandomクラスのnextFloatメソッドを完全ガイド!初心者でもわかる
JavaのSpringで使う@NotEmptyアノテーションを完全解説!初心者でも理解できる入力チェックの基本
Thymeleafのth:caseを完全ガイド!初心者でもわかる条件分岐の書き方
Spring Bootのヘッダー操作を徹底解説!Location・Retry-After・CORSの設定方法まとめ
PR 未経験からITエンジニアを目指す方へ

Javaを学んでいるけど、「このまま未経験で就職できるか不安」という20代向け。 学歴不問・無料サポートの就職支援という選択肢があります。

Tamesy |無料で面談予約
人気記事
No.1
Java&Spring記事人気No1
JavaのIntegerクラスの使い方を完全ガイド!初心者でもわかる整数操作
No.2
Java&Spring記事人気No2
Javaのラムダ式で配列を扱う!Arrays.streamの基本と注意点を初心者向けに解説
No.3
Java&Spring記事人気No3
Spring BootとJavaの互換性一覧!3.5/3.4/3.3はJava 21・17に対応してる?
No.4
Java&Spring記事人気No4
JavaのRuntimeExceptionを完全解説!初心者でもわかるjava.langパッケージの基礎
No.5
Java&Spring記事人気No5
Springの@Serviceアノテーションの使い方を徹底解説!初心者でもわかるSpring フレームワーク入門
No.6
Java&Spring記事人気No6
Spring BootのJakarta移行ガイド!初心者向けjavax→jakarta変更ポイント徹底解説
No.7
Java&Spring記事人気No7
Thymeleaf(タイムリーフ)入門!初心者でもわかるSpring Bootとテンプレートエンジンの使い方
No.8
Java&Spring記事人気No8
Javaの@SuppressWarningsアノテーションの使い方を完全ガイド!初心者でもわかる警告の抑制方法
PR

ローカルPCに依存しない開発環境という選択肢

Java・Linuxの検証や学習環境を、クラウド上ですぐに用意できます。

Java入門

Javaの基礎を体系的に学びたい場合は、文法だけでなく 「なぜそう書くのか」まで丁寧に解説されているため、 初心者でも理解しやすい定番の1冊です。

スッキリわかるJava入門 第4版

※ 紙の書籍・電子書籍どちらでも購入できます

Java実践

ジェネリクス、enum、シールクラスなどの型設計から、 関数型プログラミング(ラムダ式・Stream API)、 JVM制御やリフレクション、外部ライブラリの活用までを扱っており、 「Javaを使えるレベル」へ進むための内容が網羅されています。

スッキリわかるJava入門 実践編 第4版

※ 紙の書籍・電子書籍どちらでも購入できます

Spring入門

Spring Frameworkの全体像から、 Webアプリ開発で必要となる主要機能までを 体系的に解説している定番の入門書です。

Spring徹底入門 第2版 Spring FrameworkによるJavaアプリケーション開発

※ 紙の書籍・電子書籍どちらでも購入できます

PR 実務経験のあるエンジニア向け

Javaなどの実務経験があり、次のキャリアを検討している方向け。 IT・ゲーム業界に特化した転職支援サービスという選択肢もあります。

転職ボックス |IT・ゲーム業界専門