공부 자료
https://www.youtube.com/watch?v=96rFgaDR5xM&list=PLQdnHjXZyYadiw5aV3p6DwUdXV2bZuhlN&index=6
오늘도 화이팅
코틀린에서의 반복문과 증감연산자
반복문의 종류
조건이 참일 경우 반복을 유지하는 조건형 반복문
반복 범위를 정해 반복을 수행하는 범위형 반복문
조건형 반복문
while, do...while
예제)
fun main() {
var a = 0 -------------> 변수 a에 0을 넣는다
while(a < 5) { ------------> 조건이 참일 경우
println(a++) -------------> a에 1을 더해준다
}
}
여기서 증감연산자는,
++a, a++, --a, a-- 로써, 1씩 증가시키거나 감소시키는 역할을 한다.
그럼, 앞에 붙이는 것과 뒤에 붙이는 것은 어떻게 다른가?
전위연산자 ( ++a, --a)는 이미 연산자가 포함된 구문에서 이미 증감된 수를 반영하여 연산이 진행
후위연산자 (a++, a--)는 증가나 감소된 수를 해당 구문에서 사용하지 않고 다음 구문부터 사용을 한다
간단하게 예를 들어보자,
fun main() {
var a = 0
while(a < 5) {
println(a++) -------------> [a++ 후위연산자]
}
}
후위연산자이니, 현재 구문에서는 사용하지 않는다. 그러므로 출력하면
0, 1, 2, 3, 4 가 된다.
전위연산자의 경우라면, 현재구문을 포함하니 출력하게 되면
1, 2, 3, 4, 5 가 된다.
그럼 다른 하나인, do...while문은 어떤 차이가 있는가?
fun main() {
var a = 0
do
{
println(a++)
} while (a < 5)
}
while에 의한 조건을 체크해 반복한다는 점은 같지만 최초 한번은 조건 없이 do에서 구문을 실행하여 while로 조건을 체크한다는 [선후관계]의 차이가 있다.
그러므로, 0, 1, 2, 3, 4가 나오게 된다.
따라서, 조건과 관계 없이 반드시 한 번은 실행해야 한다면 do...while문을 사용하여야 한다.
범위형 반복문 for
바로 예를 들어보자.
fun main() {
for(i in 0..9) ---> 인덱스로 지정할 변수 i를 생성 ( 이 때, for문에서 변수를 지정하는건 var이 필요없다. ),
거기에 in을 붙이고 0..9를 놓으면 0부터 9까지 범위가 지정되어 i가 0부터 9 이내로 동작한다.
}
기본적으로 for문은 1씩 반복을 하는데
fun main() {
for(i in 0..9) {
print(i) --------------------> print는 println과 다르게 줄을 떼지 않고 출력해주는 함수이다.
}
}
화면에 출력을 해보면
0123456789가 출력된다.
그럼 증가값을 1이 아닌 다른 값으로 할 수 없을까?
이 때는, 단계를 뜻하는 step을 옵션으로 붙여주면 된다.
for(i in 0..9 step 3) 이렇게 하면
0369가 출력된다.
그럼 감소는?
for (i in 9 downTo 0)으로 하면 되고
감소 역시 뒤에 step을 붙여주면 감소값을 다르게 설정할 수 있다.
화이팅 내자신
'앱 만들기 공부 > Kotlin' 카테고리의 다른 글
[앱 만들기] Kotlin 언어 공부 04 < 조건문과 비교연산자로 코드를 분기해보자! > (0) | 2020.03.24 |
---|---|
[앱 만들기] Kotlin 언어 공부 03 < 타입추론과 함수 > (0) | 2020.03.24 |
[앱 만들기] Kotlin 언어 공부 02 < 형변환과 배열로 자료형을 변경하고 저장하는 법 > (0) | 2020.03.23 |
[앱 만들기] Kotlin 언어 공부 01 < 변수와 자료형, 데이터를 관리하는 기본적인 방법 > (0) | 2020.03.23 |
Kotlin 언어 공부 <시작> (1) | 2020.03.23 |