Java
 Computer >> コンピューター >  >> プログラミング >> Java

Java乱数:初心者向けガイド

Java乱数を生成する方法

5. 7. 22.私たち人間にとって、乱数を生成するのは簡単です。私たちがしなければならないのは、自分自身に番号を尋ねるだけで、1つが頭に浮かびます。

プログラミングがとても簡単だったらね? Javaでは、方法を知っていれば、乱数を生成するのは簡単です。

このガイドでは、乱数を生成するために使用できる3つのアプローチについて説明します。数字推測ゲームのコンテキストで各メソッドがどのように機能するかの例を見ていきます。

乱数の生成

私たちは皆、ある時点で数字を推測するように求めるゲームの1つをプレイしました。あなたが正しいものを推測することができれば、それらのいくつかは賞を授与することさえあります。このガイドでは、Javaで数字を推測するゲームを作成します。

もちろん、最初のステップは乱数を生成することです。乱数がなければ、私たちのゲームはあまり楽しくありません。これを行うために使用できる3つの方法のそれぞれを見ていきましょう。

ランダムクラスの使用

Javaには、乱数を生成するために使用できる「Random」と呼ばれる便利なクラスがあります。 java.util.Randomを使用して、数字を推測するゲームを開始します 乱数のストリームを生成するクラス:

import java.util.Random;

class Main {
	public static void main(String args[]) {
		Random random_number_generator = new Random();
		int random_number = random_number_generator.nextInt(25);

		System.out.println(random_number);
	}
}

このクラスを3回実行すると、3つの乱数が生成されます。

22
15
19

まず、クラスjava.util.Randomをインポートします。 。次に、「random_number_generator」と呼ばれるこのクラスのインスタンスを作成しました。このインスタンスを使用して、乱数を生成できます。

参加者の81%は、ブートキャンプに参加した後、自分たちの技術的な仕事の見通しについてより自信を持っていると述べました。今日のブートキャンプにマッチしましょう。

平均的なブートキャンプの卒業生は、ブートキャンプの開始から最初の仕事を見つけるまで、キャリアの移行に6か月も費やしませんでした。

nextInt() メソッドを使用すると、0の範囲と別の指定された数の間の乱数を生成できます。上記では、数値25を指定しました。これは、ジェネレータが返すすべての数値が0〜25になることを意味します。

Math.random()の使用

Math.random()メソッドの使用には少し手間がかかりますが、それでも乱数を生成するための良い方法です。 Math.random()を使用して乱数ジェネレータシーケンスを作成しましょう :

class Main {
	public static void main(String args[]) {
		int small = 0;
		int large = 25;

		int random_number = (int)(Math.random() * (large - small + 1) + small);
		System.out.println(random_number);
	}
}

Math.random() Javaに組み込まれています。これは、コードにインポートする必要がないことを意味します。

まず、2つの変数を宣言します。 「small」は、数値が生成されない下限を指定します。 「大」は、それを超えると数値が生成されない上限です。

次に、数式を使用して乱数を生成しました。これは、Math.random()が原因です。 それ自体は乱数全体を返しません。 Math.randomメソッドは、0.0から1.0までの乱数を返します。上記の数式を使用して、範囲内の整数に変換する必要があります。

コードを3回実行すると、次の3つの乱数が生成されます。

2
1
9

ThreadLocalRandomの使用

ThreadLocalRandomは、乱数を生成するために使用できるクラスです。

このクラスは、複数の乱数を並行して生成する場合に最適です。これは通常、マルチスレッド環境で発生します。

この方法を使用して乱数ジェネレーターを作成しましょう:

import java.util.concurrent.ThreadLocalRandom;

class Main {
	public static void main(String args[]) {
		int small = 0;
		int large = 25;

		ThreadLocalRandom random_number_generator = ThreadLocalRandom.current();
		int random_number = random_number_generator.nextInt(small, large);
		System.out.println(random_number);
	}
}

乱数の生成に使用しているクラスを含むThreadLocalRandomライブラリをインポートすることから始めました。次に、乱数ジェネレーターの下限と上限を設定する2つの変数を指定しました。

ThreadLocalRandomクラスを参照するrandom_number_generatorという変数を宣言しました。次に、nextInt()を使用しました メソッドを使用し、乱数を生成するために「小さい」変数と「大きい」変数を引数として指定しました。

プログラムを3回実行すると、3つの乱数が返されます。

4
23
15

これで、残りの推測ゲームの作成を開始する準備が整いました。

推測ロジックの作成

これで、乱数を生成する方法がわかりました。ゲーム構築の次のステップは、ユーザーが乱数を推測できるようにするロジックを作成することです。

上記の例のいずれかをこのコードで使用して、機能させることができます。コードスニペットの変数名は、以下の例と互換性があるように設定されています。

まず、「スキャナー」クラスを使用して、ユーザーに数字を推測するように依頼しましょう。

import java.util.Scanner;

class Main {
	public static void main(String[] args) {
		// Guessing code goes here
		Scanner guess = new Scanner(System.in);

		System.out.println("Guess a number between 1 and 25: ");
		int user_guess = guess.nextInt();
	}
}

このコードは、ユーザーに「1から25までの数字を推測します:」と尋ねます。ユーザーがJavaコンソールに入力した値は、変数「user_guess」として保存されます。

次に、ユーザーが推測した数がプログラムが生成した数と等しいかどうかを確認するifステートメントを記述します。

...
if (user_guess == random_number) {
	System.out.println("You have correctly guessed the number!");
} else {
	System.out.println("Your guess is incorrect!");
}

プログラムを実行して、1から25までの数字を入力してみましょう:

Guess a number between 1 and 25:
7
Your guess is incorrect!

数値を正しく推測すると、プログラムから次のように返されます。

Guess a number between 1 and 25:
9
You have correctly guessed the number!

ほんの数行のコードで、推測する乱数を生成するゲームを正常に作成することができました。

結論

乱数は、プログラミングで幅広い用途があります。この例では、推測ゲームで乱数を使用する方法について説明しました。

乱数を生成するために使用できる方法は3つあります。

  • ランダムクラスの使用
  • 組み込みのMath.random()を使用する メソッド
  • ThreadLocalRandomクラスの使用

あなたは挑戦を探していますか?複数の推測ができるように、推測ゲームのコードを変更します。


  1. JavaMath.randomの使用方法

    Math.random() Java メソッドは、0.0〜1.0の疑似乱数を生成します。結果の乱数を乗算して0-1の範囲外の範囲を取得でき、結果は0になる可能性がありますが、常に1未満です。 プログラミングをしていると、乱数を生成する必要がある場合がよくあります。たとえば、クルーズラインを運営しているとします。顧客の注文の最後に追加され、予約の参照として使用される乱数を生成することをお勧めします。または、推測ゲーム用に乱数を生成することもできます。 Javaには、乱数を生成するために使用できるいくつかの方法があります。 このチュートリアルでは、Javaで乱数を生成するために使用

  2. Javaコンパイラ:ステップバイステップガイド

    5年から10年前は、Javaの学習は今ほど利用しやすくありませんでした。当時は、マシンで実行するコンパイラとインタプリタを含むJava Development Kit(JDK)をダウンロードする必要がありました。現在、オンラインで無料で利用できるJavaコンパイラが多数あります。この記事では、Java言語のコンパイルがどのように機能するか、およびプロジェクトを実践および作成するためにオンラインで利用できるいくつかのツールについて少し説明します。 Javaプログラムはどのように実行されますか? Javaは完全にコンパイルされたプログラミング言語ではありません。ただし、完全に解釈され