Java'da rastgele sayı üretecini, programı her çalıştırdığında aynı sayıları almaya devam ettiğinde bir arkadaşa anlatmaya çalışıyordum. Aynı şeyin kendi daha basit versiyonunu yarattım ve programımı her çalıştırdığımda da tam olarak aynı numaraları elde ediyorum.Java rastgele sayılar rasgele değil mi?
Neyi yanlış yapıyorum? 100 üzerinden
import java.util.*;
public class TestCode{
public static void main(String[] args){
int sum = 0;
Random rand = new Random(100);
for(int x = 0; x < 100; x++){
int num = (rand.nextInt(100)) + 1;
sum += num;
System.out.println("Random number:" + num);
}
//value never changes with repeated program executions.
System.out.println("Sum: " + sum);
}
}
son beş sayılardır:
40
60
27
56
53
iyi bir yol kullanımı Math.random() 'dir. – Gere
Rastgele örneğinizi oluştururken sabit bir tohum kullanıyorsunuz. Tabi ki aynı sayıları alacaksın. –
@Gere: Math.random() ile ilgili bu kadar büyülü şey nedir ve neden Rastgele bir örnek kullanmaktan daha iyidir? –