簡體   English   中英

基本數組中隨機生成的數字

[英]Randomly generated numbers in a basic array

我只需要知道我應該做些什么,以使基本數組充滿隨機生成的數字。 現在我知道該怎么做,我不知道要怎么做,以使隨機生成的數字大於一直到數組末尾的最后一個生成的數字。

只需為列表生成,然后將它們從最小到最大排序即可。

for(int i = 0; i < arr.length; ++i) {
    arr[i] = Random.nextInt(100);
}
Arrays.sort(arr);

生成隨機數,然后對數組進行排序。
您可以使用Arrays.sort()對數組進行Arrays.sort()

它不能確保每個數字都嚴格大於先前的數字[僅保證<= ],因此,如果有問題-您將必須確保生成的數字中沒有重復項。

您可以生成一個隨機數數組,然后使用Array sort對其進行排序

關於這個問題有一條評論,我輸了作者的名字,建議將隨機生成的數字添加到先前的數字,我認為這是一種有趣的方法。

arr[0] = Random.nextInt(100);

for(int i = 1; i < arr.length; ++i) {
    arr[i] = arr[i-1] + Random.nextInt(100); 
} 

這樣就無需對結果數組進行排序。

沒有人感到驚訝的是,我們可以使用SecureRandom API輕松生成隨機數組, 而無需手動填充它

對於前。 生成大小為100的隨機數組:

SecureRandom random = new SecureRandom();
int arr[] = random.ints(100).toArray();

順便說一句,從Java 8開始應該是可能的。

您可以使用自己的算法來生成增量...

例如...

每次隨機,並將該數字添加到最后一個:)

Java中的Random類不允許您限制從哪里開始..只有一個...

例如:

myArray[0] = Random.nextInt(10000);
for(int i=1; i<myArray.length; i++)
{
    myArray[i] = myArray[i-1]+Random.nextInt(10000);
}

所以..它是隨機的,您不必對其進行排序..請嘗試使所有內容保持簡單...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM