Java에서 숫자는 많이 쓰이는 자료형 데이터 인데요. 가끔 이 숫자를 램덤(난수)로 추출해 사용하고 싶을 때가 있습니다.
이런 난수를 생성하기 위해서는 여러가지 방법이 있겠으나, Java에서 제공하는 Math나 Random 클래스를 사용하면 무작위의 값을 간단하게 추출할 수 있습니다.
그래서 Java 랜덤 숫자 생성 방법을 공부해 보겠습니다.
Math 클래스 이용
Math클래는 Java.lang에서 제공하는 클래스로 수학관련 메소드를 다수 지원하고 있으며, 랜덤 기능도 포함하고 있습니다.
Math 예제
int ran_num = (int) Math.floor((Math.random() * 10));
System.out.println("Math Random 숫자 : "+ran_num);
소스를 보시면 뒤에 10을 곱한것이 보일텐데요.
저 값이 한계값으로 1부터 9까지의 랜덤함 값을 뽑을 수게 해줍니다.
1~100까지의 랜덤 값을 뽑고 싶으면 * 101을 하시면 됩니다.
곱하기 10을 해서 1~9 사이인 6이 나온 결과 입니다.
Random 함수
Random 함수 역시 Java.lang에 속해 있는 클래스로 다양한 형태의 숫자를 랜덤하게 뽑을 수 있는 기능을 제공합니다.
Random 예제
Random rm = new Random();
System.out.println(rm.nextInt(11));
nextInt의 메개변수 안에 값을 지정해 주시면 위와 같이 무작위의 값을 지정하면 해당 값의 -1 까지의 무작위의 값을 추출할 수 있습니다.
둘다 기능은 같지만 형변환 등의 절차가 필요 없는 Random 클래스의 사용이 더 간단해 보입니다.
역시 1부터 10사이인 숫자 2가 출력된 모습입니다.
java 숫자 랜덤 클래스를 이용하면 난수를 이용하는 로또 프로그램도 제작이 가능하니 참고해 보시기 바랍니다.