Java에는 함수 Math.random()
과 클래스 Random
이 있습니다. 왜 겉으로보기에는 동일한 작업 (즉, 난수 생성)에 대해 두 개의 엔티티가 있으며 언제 어떤 엔티티를 사용해야합니까?Java에서 임의의 숫자에 대한 클래스뿐만 아니라 함수가있는 이유는 무엇입니까?
1
A
답변
7
명시 적 임의 시드를 설정해야하는 경우 (재연 가능 난수를 원할 때 가끔 그렇습니다), Random
을 사용합니다.
그 외에도 random()
메서드는 고정 Random
개체의 바로 가기이므로 간결함을 위해 그리고 임의의 시드 (보통은 시간이 맞을 것입니다.)에 신경 쓰지 않을 때 사용합니다.
2
'차이'는 java.util.Random에 두 개 이상의 유형 숫자를 반환하는 메소드가 있다는 것입니다. 캐스팅이 필요하지 않습니다. 하나의 생성자를 사용하면 사용자가 반복 시퀀스에 대해 생성기를 시드 할 수 있습니다.
java.lang.Math.random()은 java.util.Random을 사용합니다. 복식만을 제공하며 파종 능력은 없습니다.
관련 문제
- 1. 임의의 숫자에 대한 신속 검색 문자열?
- 2. 임의의 두 자리 숫자에 대한 정규식
- 3. 수퍼 클래스뿐만 아니라 하위 클래스에서도이 검색 방법을 사용할 수 있습니까?
- 4. 모바일 브라우저의 임의의 숫자에 임의의 숫자가 표시됩니다.
- 5. Java에서 임의의 시드는 무엇입니까?
- 6. std :: unique_ptr에 "get()"멤버 함수가있는 이유는 무엇입니까?
- 7. 부호없는 숫자에 대한 MIPS 연산이 부호있는 결과를 얻는 이유는 무엇입니까?
- 8. 범위의 숫자에 대한 Grep R
- 9. 숫자에 대한 타임 스탬프
- 10. 긴 숫자에 대한 연산 R
- 11. 숫자에 대한 포인터
- 12. qmake -project가 hello.cpp에 main 함수가있는 이유는 무엇입니까?
- 13. Memento 객체에 setState() 함수가있는 이유는 무엇입니까?
- 14. 두 개의 다른 getline() 함수가있는 이유는 무엇입니까?
- 15. 숫자에 대한 검색 문자열
- 16. 숫자에 대한 정규 표현식?
- 17. 숫자에 대한 문자열 검사
- 18. 숫자에 대한 Trie
- 19. 숫자에 대한 Matlab 보간
- 20. 페르시아어 숫자에 대한 정규식
- 21. 숫자에 대한 CSS 속성
- 22. Java의 "protected"한정자가 같은 패키지의 다른 클래스에 대한 액세스를 허용하는 이유는 무엇입니까?
- 23. 숫자에 대한 Pyodbc 기본 유형
- 24. Java에서 임의의 int 생성
- 25. Java에서 임의의 double을 제한합니다.
- 26. Java에서 임의의 JSON 문자열을 생성하는 방법은 무엇입니까? .
- 27. TTN_NEEDTEXTW가 아니라 TTN_NEEDTEXTA가 아닌 이유는 무엇입니까?
- 28. DIV가 옆으로가 아니라 아래로 밀린 이유는 무엇입니까?
- 29. 식별자가 Java에서 숫자로 시작될 수없는 이유는 무엇입니까?
- 30. 존재하지 않는 style.css 액션에 대한 임의의 호출 - 이유는 무엇입니까?
시드가 아닌 광석이있을 수 있습니다. http://stackoverflow.com/questions/738629/math-random-versus-random-nextintint –
중복이 아닌 다른 질문은 분명히 샘플링에 관한 것입니다. 'Math.random() * n '을 통해 정수로 변환됩니다. – kutschkem