> Java > Java베이스 > 본문

자바에서 난수를 생성하는 방법

hzc
풀어 주다: 2020-06-22 17:58:22
원래의
5364명이 탐색했습니다.

자바에서 난수를 생성하는 방법난수 생성은 일부 코드에서 매우 일반적으로 사용되며, 우리가 숙지해야 할 부분이기도 합니다. Java에서 난수를 생성하는 세 가지 주요 방법이 있습니다.

  첫 번째 방법: new Random()new Random()

    第二种:Math.random()

    第三种:currentTimeMillis()

  第一种需要借助java.util.Random类来产生一个随机数发生器,也是最常用的一种,构造函数有两个,Random()和Random(long seed)。

  두 번째 방법: Math.random()

  세 유형: currentTimeMillis()

첫 번째는 가장 일반적으로 사용되는 난수 생성기를 생성하기 위해 java.util.Random 클래스의 도움이 필요합니다. , 생성자 Random()과 Random(긴 시드) 두 가지가 있습니다. 첫 번째는 현재 시간을 기본 시드로 사용하고, 두 번째는 지정된 시드 값을 사용합니다. 생성 후에는 다양한 명령문을 사용하여 다양한 유형의 숫자가 생성됩니다.

 시드는 난수를 생성하는 데 사용되는 첫 번째 값입니다. 메커니즘은 이 시드의 값을 함수를 통해 난수 공간의 특정 지점으로 변환하고 생성된 난수를 공간에 고르게 분산시키는 것입니다. 앞으로 생성되는 난수는 이전 난수와 관련이 있습니다. 코드를 예로 들어 보겠습니다.

public static void main(String[] args)
{
  Random r = new Random(1);
  for(int i=0 ; i<5 ;  i++)
  {
    int ran1 = r.nextInt(100);
    System.out.println(ran1);
  }
}
로그인 후 복사

내 컴파일러에서 생성된 5개의 숫자는 모두 85,88,47,13,54입니다. Random r = new Random()을 사용하면 생성된 난수가 서로 다릅니다.

 두 번째 방법으로 반환되는 값은 [0.0, 1.0)의 double 값이므로 정밀도가 높으므로 (int)를 사용하여 어느 정도 수행할 수 있습니다. 유형 변환 정수 난수를 얻었는데 코드는 다음과 같습니다.

  public static void main(String[] args)     {    
        int max=100,min=1;      
        int ran2 = (int) (Math.random()*(max-min)+min); 
        System.out.println(ran2);   
   }
로그인 후 복사

세 번째 방법은 일반적으로 사용되지는 않지만 아이디어이기도 합니다. 이 메서드는 1970년 1월 1일 0:00:00(UNIX 시스템 관련)부터 현재까지의 긴 숫자를 반환하며, 모듈로를 취한 후 필요한 범위 내의 임의의 숫자를 얻을 수 있습니다. 🎜
public static void main(String[] args)
    {
        int max=100,min=1;
        long randomNum = System.currentTimeMillis();
        int ran3 = (int) (randomNum%(max-min)+min);
        System.out.println(ran3);

    }
로그인 후 복사
🎜추천 튜토리얼: "🎜java tutorial🎜"🎜

위 내용은 자바에서 난수를 생성하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!