C#でのrandomの使い方は何ですか?
C#において、Randomクラスは疑似乱数を生成するために使用されます。以下にはRandomクラスの一般的なメソッドと使い方が示されています。
- Randomオブジェクトを生成する:
- ランダム rand = 新しい ランダム();
- ランダムな整数を生成する:
- rand.Next()を使用して、非負のランダム整数を生成します。
rand.Next(minValue, maxValue)を使用して、特定の範囲内のランダム整数を生成します。 - ランダムな浮動小数点数を生成する:
- rand.NextDouble()メソッドを使用して、0以上1未満のランダムな浮動小数点数を生成します。指定された範囲内のランダムな浮動小数点数を生成するには、minValueに加えて(maxValue – minValue) * rand.NextDouble()を使用します。
- ランダムなバイトを生成する:
- byte[] randomBytes = new byte[length];
rand.NextBytes(randomBytes); // Generating a random byte array of specified length. - リストの順番を入れ替える:
- List list = new List(){1, 2, 3, 4, 5};
list = list.OrderBy(x => rand.Next()).ToList(); //ランダムな数字を利用して並べ替え、リストをランダムに並べ替える
Randomクラスはシステム時間をシード値として使用するため、ループ内でRandomオブジェクトを作成すると同じランダム数列が生成される可能性があります。この問題を解決するために、アプリケーションを起動時にRandomオブジェクトを作成し、必要な時に再利用することができます。