[Android/Kotlin] 안드로이드 로또 번호 생성하기(1)
랜덤으로 로또 번호를 생성하는 방법입니다.
간단히 설명드리면
로또 번호를 담을 List를 하나 생성합니다.
번호를 랜덤으로 생성하고, List에 담기전에 똑같은 번호가 들어있는지 확인을 해줍니다.
List에 담겨져 있다면 continue를 호출하여 반복문을 다시 시작합니다. 반대로 없으면 List에 담아줍니다.
6개 번호가 담겨질때까지 반복합니다.
마지막으로 번호순서대로 정렬하기 위해 sort()를 호출 합니다.
[While 사용]
fun main(args: Array<String>) {
val result = createRandomNumberList()
for (i in result.indices) {
println("i번째 숫자: ${result[i]}")
}
}
fun createRandomNumberList(): List<Int> {
val lottoNumbers = mutableListOf<Int>()
while (lottoNumbers.size < 6) {
val randomNumber = Random.nextInt(1, 46)
if (lottoNumbers.contains(randomNumber)) {
continue
}
lottoNumbers.add(randomNumber)
}
lottoNumbers.sort()
return lottoNumbers
}
다른 방법으로는
리스트에 1~45까지 숫자를 담습니다.
그리고 그 숫자들을 섞어줍니다. -> shuffle() 호출
그리고 결과 리스트에 6개 숫자만 담아줍니다.
[For Loop 사용]
fun main(args: Array<String>) {
val result = createRandomNumberListByForLoop()
for (i in result.indices) {
println("i번째 숫자: ${result[i]}")
}
}
fun createRandomNumberListByForLoop(): List<Int> {
val lottoNumbers = mutableListOf<Int>()
val lottoNumbersResult= mutableListOf<Int>()
for (i in 1..45) {
lottoNumbers.add(i)
}
lottoNumbers.shuffle()
for (i in 0..5) {
lottoNumbersResult.add(lottoNumbers[i])
}
lottoNumbersResult.sort()
return lottoNumbersResult
}
번호를 생성하면 아래와 같은 결과를 확인 할 수 있습니다.
https://play.google.com/store/apps/details?id=com.reachfree.numberonelotto
'기리's Android 이야기' 카테고리의 다른 글
[Android/Kotlin] 안드로이드 SharedPreferences 사용하기 (3) | 2021.01.20 |
---|---|
[Android/Kotlin] 안드로이드 로또 당첨번호 조회하기(2) (4) | 2021.01.19 |
[앱소개/로또앱] 넘버원로또 소개 (4) | 2021.01.17 |
[Android/Java] 안드로이드 ViewPage2 무한 이미지 슬라이딩 구현하기 (10) | 2021.01.15 |
[Android Studio] 프로젝트/패키지명 변경하기 (3) | 2021.01.14 |
댓글