[Java] 난수 생성

Woozard·2023년 5월 18일
2

Java

목록 보기
12/13
post-thumbnail

정수형 난수 생성을 기준으로 글을 작성 했습니다.

난수를 생성하는 두 가지 방법


1. Math.random()

public class test {
  public static void main(String[] args) {
    System.out.println(Math.random()); //0.0 ~ 1.0 난수 발생
    System.out.println((int)(Math.random() * 10)); //0 ~ 10 난수 발생
    System.out.println((int)(Math.random() * 100)); //0 ~ 100 난수 발생
  }
}

Math.random()을 하게 되면 0.0 ~ 1.0 사이에 실수형 난수가 반환된다. 이를 우리가 정수형으로 사용하기 위해서 앞에 (int)를 붙여주면 소수점 밑 부분이 날아가고 정수 부분만 남게 된다. 또한 Math.random() * N을 해주게 되면 범위가 0 ~ N이 되게 된다.

2. Random 모듈

import java.util.Random;

public class test {
  public static void main(String[] args) {
    Random random = new Random();
    System.out.println(random.nextInt()); //-2,147,483,648 ~ 2,147,483,647 난수 발생
    System.out.println(random.nextInt(10)); //0 ~ 10 난수 발생
    System.out.println(random.nextInt(100)); //0 ~ 100 난수 발생
  }
}

우선 Random 클래스를 불러와서 인스턴스를 생성 해야 한다. 그리고 nextInt(N)를 하게 되면 0 ~ N 범위에서 정수가 랜덤하게 반환되게 된다. 만약에 N값을 입력하지 않으면 정수 범위에 최솟값 ~ 최댓값으로 범위가 자동으로 설정 되는 것을 알 수 있다.
예를 들어서 범위가 0 ~ 10이라고 하면 0 이상 10 미만 수에서 값을 반환 한다는 뜻입니다.

profile
Hello, World!

0개의 댓글