Random 메소드
안녕하세요!
오늘 포스팅 할 내용은 'Random 메소드'입니다.
프로그래밍을 할 때, 가끔 정해지지 않은 임의의 숫자가 필요할 때가 있습니다.
게임, 복권 추첨 프로그램을 짤 때가 그 예가 되겠죠?
우리의 다재다능한 Java가 어떻게 이러한 난수를 발생켜주는지 한 번 살펴보도록 하겠습니다.
* Random 메소드란?
- 한 번 호출할 때마다 0에서 1사이의 난수를 발생시켜 리턴해주는 메소드.
- 소속은 math 클래스이다.
- 기본 리턴 타입은 double(실수)이다.
- 형식 : Math.random()
random 메소드를 한 번 호출해보겠습니다.
0.81951429514... 긴 숫자가 출력되네요!
이번엔 한 개가 아니라 여러 개를 출력해보겠습니다.
엄청난 숫자들이 나오네요...ㅎㅎ
그런데 0부터 1사이의 실수만 나오네요.
양의 정수로 출력하기 위해서는 'int(정수형)'로 캐스팅만 해주면 됩니다.
그런데 단순히 random 메소드를 호출하여 정수형으로 캐스팅만 하면 0이 나옵니다.
0보다 크고 1보다 작은 실수이니, 정수형으로 바꾸면 당연히 0이 나올 수밖에 없기 때문이죠.
그래서 0 이상인 정수를 호출하기 위해, 10을 곱해서 1을 더해주는 연산을 추가하여 호출해보겠습니다.'(int) (Math.random * 10) + 1' 으로 코딩하겠습니다.
0보다 큰 정수 5가 정상적으로 출력됩니다.
여러 개의 난수를 동시에 출력하고 싶으면, 제어문 for를 사용하면 됩니다.
for문을 사용하여 초기치 0에서 9까지, 증가치 1으로 { for(int i = 0 ; i < 10 ; i++) }
뺑뺑뺑뺑 돌아가는 for문을 사용하여 난수 10개를 호출해보겠습니다.
random 메소드 사용이 간단하고, 여러가지 프로그램을 짤 때 유용하다고 생각합니다.
활용 예를 곧 포스팅하도록 하겠습니다.
지금까지 random 메소드에 대한 포스팅이었습니다.
감사합니다 :)