나는 그가 프로그램을 실행할 때마다 똑같은 숫자를 계속해서 얻었을 때 자바의 난수 생성기를 친구에게 설명하려고 노력했다. 나는 똑같은 간단한 버전을 만들었고 프로그램을 실행할 때마다 똑같은 숫자를 얻고 있습니다.Java 임의의 숫자가 무작위가 아닌가요?
내가 뭘 잘못하고 있니? 100 중
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);
}
}
마지막 다섯 개 번호는 다음과 같습니다
40
60
27
56
53
는 더 좋은 방법이 사용 인 Math.random()입니다. – Gere
무작위 인스턴스를 생성 할 때 상수 시드를 사용하고 있습니다. 물론 같은 번호를 얻을 수 있습니다. –
@Gere :'Math.random()'에 대해서 왜 그렇게 환상적이며, 무작위 인스턴스를 사용하는 것보다 낫지 않습니까? –