English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Javaのランダムな数の生成は比較的簡単で、以下のように生成できます:
Random rand = new Random(47); System.out.println(rand.nextInt());
が生成されます。以下のように生成することもできます:
double d = Math.random();
もちろん、コードの前半は固定のシードを使用しているため、47ですので、各回の値は同じです。また、以下を使用することもできます。
Random rand = new Random(); System.out.println(rand.nextInt());
コードについて言えば、2それでは、doubleのランダムな数が生成されます。
以下について説明します。3の方法で、現在の要件は以下の通りです:4ランダムな数は、SMS登録コードの生成に使用されるため、ランダムな数を使用する必要があります。そのため、以下のコードを使用します:3を実現するために、そのコードを使用すると結果が条件を満たさない場合があります。そのため、以下のように実現します:
//方法1 Random rand = new Random(); for (int i = 0; i < 4; i++{ System.out.print(Math.abs(rand.nextInt() % 10)); } //rand.nextで生成されたランダムな数は負の数が存在する可能性があるため、Math.absで絶対値を取ってからモジュロを取ります。10、生成された結果は10以内 //方法2 Random rand = new Random(); for (int i = 0; i < 4; i++{ System.out.print(rand2.nextInt(10)); } //上記のAPIを使用して直接生成10以内のランダム数
最近書いたJAVAのランダム数モジュールで、さまざまなランダム関連のユーティリティメソッドをパッケージ化しました。特にお届けします。
ここには特別な技術は何もありません。関数の名前を見ればその用途が分かりますので、簡単にコメントを追加します。何か問題があればコメントを残してください。
ソースコード(RandomSet.java):
import java.awt.Color; import java.util.Collection; import java.util.Iterator; import java.util.Random; public class RandomSet { static Random random = new Random(); //指定範囲のランダムな整数を取得します public static int getRandomNum(int smallistNum, int BiggestNum) { return (Math.abs(random.nextInt()) % (BiggestNum-smallistNum+1))+smallistNum; } //ランダムな布尔値を取得します public static Boolean getRandomBoolean() { return (getRandomNum(0,1) === 1); } //0~の範囲でランダムな浮点数を取得します1の浮点数 public static float getRandomFloatIn_1()) { return (float)getRandomNum(0,1000)/1000; } //ランダムな色を取得します public static Color getRandomColor() { float R = (float)getRandomNum(0,255)/255; float G = (float)getRandomNum(0,255)/255; float B = (float)getRandomNum(0,255)/255; return new Color(R, G, B); } //一定の確率で布尔値を返します public static Boolean getRate(int rate) { if(rate<0 || rate > 100) { return false; } else { if(getRandomNum(0,100)<rate) { return true; } else { return false; } } } //指定された配列からランダムな要素を返します public static <T> T getElement(T[] t) { int index = getRandomNum(0,t.length); - 1); return t[index]; } //指定されたCollectionからランダムな要素を返します public static <T> T getElement(Collection<? extends T> c) { int atmp = getRandomNum(0,c.size()); - 1); Iterator<? extends T> iter = c.iterator(); while(atmp > 0) { atmp--; iter.next(); } return iter.next(); } }
まとめ
これで、Javaプログラミングにおけるランダムな数値生成モジュールのソースコードの共有が完了しました。皆様に役立つことを願っています。興味を持たれた方は、本サイトの他の関連するトピックを参照してください。不十分な点があれば、コメントを残してください。皆様のサポートに感謝します。
声明:本文の内容はインターネットから収集され、著作権者によって所有されています。インターネットユーザーが自発的に貢献し、自己でアップロードしました。本サイトは所有権を持ちません。人工的な編集は行われていません。また、関連する法的責任を負いません。著作権侵害を疑う内容が見つかった場合は、メールを送信してください:notice#oldtoolbag.com(メールを送信する際、#を@に置き換えてください。報告を行い、関連する証拠を提供してください。一旦確認がついたら、本サイトは即座に侵害を疑われるコンテンツを削除します。)