워누입니다! 

공부하다 심심해서 로또 프로그램을 만들었는데 중요한 개념이 몇개 들어가 있어서 재밌겠다 싶어 공유하고자 합니다.

만약 더 재밌거나 더 개선된 코드가 있다면 언제든 댓글로 남겨주세요! 

거두절미하고 먼저 소스부터 보겠습니다!

LottoNum 클래스

주석을 달기는 하였으나, 여기서 같이 봐야할 함수들, 메서드들을 같이 봅시다!

 

1. Math.random()

Math 함수는 java.lang 패키지에 포함된 함수로, 수학적 연산에 관련된 메서드를 지원합니다. 

random() 메서드가 그 중 하나입니다!

.

그럼 random() 메서드는 무슨 메서드냐? 바로 0.0부터 1.0사이의 실수(double)를 무작위로 응답하는 메서드입니다. 그냥 써버리면 0.242146.., 0.5, 0.9815 등 이상한 소수를 응답할 수도 있다는 이야기입니다.

이를 방지하기 위해 무작위로 응답한 소수에 45를 곱하고 그 뒤에 1을 더한 후 이를 int로 타입 변환을 시도합니다. 

이렇게 되면 정수형 변수 타입을 가지기 때문에 소수점 없이,

그리고 1을 무조건 더했으므로 0 없이 1~45 이내의 숫자를 출력할 수 있게 합니다. 

 

2. Arrays.sort()

Arrays 함수는 java.util 패키지에서 제공하는데, 그냥은 쓸 수 없습니다!

상단에 반드시 "import java.util.*"을 명시하여야만 사용할 수 있습니다. 

주로 배열에 관련된 메서드를 지원하는 함수이고, 그 안에 sort() 메서드가 있는 것입니다. 

.

여기서 sort()는 말 그대로 정렬시켜주는 메서드입니다. () 괄호 안에는 클래스에서 선언한 배열을 입력합니다. 

이미지 내 소스처럼 sort(lotto)라고 쓰게 되면,

lotto라는 배열 안에 들어간 값들을 오름차순으로 정렬하는 역할인 것입니다!

.

위 두개의 내용을 참고하여 상기 소스를 직접 입력해보시면 재미를 느끼실 수 있습니다. 

Lotto 클래스를 실행한 결과는 아래와 같습니다. 

.

1차 결과
2차 결과

.

진짜 로또처럼 숫자 여섯개가 나왔네요! 이걸로 진짜 로또에서..(크흠)

농담이구요! 상기 소스는 어려운 내용이 아니어서 직접 코딩해보시고 공부해보길 권장합니다. 

.

시간이 12시 26분이네요~ 전 이제 내일 출근을 위해 자러가야 할 듯 합니다 ㅎㅎ 

오늘 포스팅에 대한 질문은 언제든 댓글을 남겨주세요!! 그럼 이만 이번 포스팅 줄일게요! 안녕~~~

 

+ Recent posts