728x90
12일차
생성일: 2022년 2월 4일 오후 11:27
30개 프로젝트로 배우는 Android 앱 개발 with Kotlin 초격차 패키지 Online
강의 목표
- 프로젝트를 따라해보며 앱개발에 필요한 기술을 학습할 수 있습니다.
- 프로젝트를 따라해보며 앱개발에 필요한 기술을 학습할 수 있습니다.
- 앱 개발시 원하는 기능을 구현하기 위해 어떤 기술이 필요한 지 알 수 있습니다.
- 디자인 아키텍처 패턴, 비동기 처리 등 효율적인 앱 개발 방법을 익힐 수 있습니다.
목차 02 Basic - Ch02. 로또 번호 추첨기
인트로(완성앱&구현기능소개)Collection 개념 소개- 로또 번호 추첨 알고리즘 생각해보기
- Constraintlayout 이용하여 기본 UI 그리기(1)
- Constraintlayout 이용하여 기본 UI 그리기(2)
- 기능 구현하기(1)
- 기능 구현하기(2)
- Resource를 이용하여 꾸며보기
- 아웃트로(정리)
로또 번호 추첨 알고리즘 생각해보기
- 랜덤하게 번호를 추출하기 위해서 Random 객체를 사용한다
- https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.random/-random/
- Random 객체의 메소드
nextInt()
로 임의의 숫자를 추출할 수 있다’
val random = Random()
print("${random.nextInt(45) + 1}")
- 인자로 bound를 주어 1부터 45까지의 값을 추출한다
- list 콜랙션 자료구조를 이용하여 숫자 6개를 중복없이 뽑아보자
val random = Random()
val list = mutableListOf<Int>()
while(list.size < 6) {
val randomNumber = random.nextInt(45) + 1
if(list.contains(randomNumber)) continue
list.add(randomNumber)
}
print(list)
- 중복 되지 않도록
contains
함수로 중복여부를 체크한다 - set 자료구조를 이용하여 더 간단하게 중복 없이 숫자를 추출할 수도 있겠다
val random = Random()
val numberSet = mutableSetOf<Int>()
while(numberSet.size < 6) {
val randomNumber = random.nextInt(45) + 1
numberSet.add(randomNumber)
}
print(numberSet)
- 또다른 방법으로 list 를 섞어 앞의 6개의 원소만 추출하는 방법도 존재하겠다
val random = Random()
val list = mutableListOf<Int>().apply {
for(i in 1..45) {
this.add(i)
}
}
list.shuffle()
print(list.subList(0, 6))
apply
를 이용하여 리스트를 1부터 45까지의 숫자로 초기화 해준다- 그리고
shuffle
함수로 랜덤하게 섞어준 후 subList()
함수로 앞의 6개 원소만 리스트화 하면 똑같이 랜덤하게 6개 숫자를 추출할 수 있다
본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성되었습니다.
수강인증샷
링크
728x90
'Android > Challenge' 카테고리의 다른 글
패스트캠퍼스 챌린지 14일차 (0) | 2022.02.06 |
---|---|
패스트캠퍼스 챌린지 13일차 (0) | 2022.02.05 |
패스트캠퍼스 챌린지 11일차 (0) | 2022.02.03 |
패스트캠퍼스 챌린지 10일차 (0) | 2022.02.02 |
패스트캠퍼스 챌린지 09일차 (0) | 2022.02.01 |