for-each문 (향상된 for문)
- 코틀린에서는
:
대신in
을 사용한다. - Iterable 이 구현된 타입이면 뭐든 들어갈 수 있다.
- Type을 기재하지 않는다.
/* Kotlin */
val numbers = listOf(1L,2L,3L)
for (number in numbers) {
println(number)
}
/* Java */
List<Long> numbers = Arrays.asList(1L,2L,3L);
for (Long number : numbers) {
System.out.println(number);
}
for문 (Progression, Range)
..
연산자 : 범위를 만들어 내는 연산자1..3
: 1부터 3의 범위
IntRange
>IntProgression
을 상속받고 있음- 사실상
등차수열(Progression)
을 만들어 주는 것! 시작값
,끝값
,공차
지정3 downTo 1
: 시작값3, 끝값1, 공차가 -1인 등차수열1..5 step 2
: 시작값1, 끝값5, 공차가 2인 등차수열
- 사실상
downTo
,Step
도 결국엔 함수이다. (중위호출함수)변수.함수이름(arg)
대신변수 함수이름 arg
1..5 step 2
실행 순서- 1부터 5까지 등차수열 생성
- 등차수열.step(2)
- 1,3,5 반환
/** Kotlin **/
for (i in 1..3){ //1씩 증가
println(i)
}
for (i in 3 downTo 1){ //1씩 감소
println(i)
}
for (i in 1..5 step 2){ // 1~5 2씩 증가
println(i)
}
for (i in 5 downTo 1 step 2){ // 5~1 2씩 감소
println(i)
}
/** Java **/
for (int i = 1; i <= 3; i++) { // 1~3 1씩 증가
System.out.println(i);
}
for (int i = 3; i >= 1 ; i--) { // 3~1 1씩 감소
System.out.println(i);
}
for (int i = 1; i <= 5 ; i=i+2) { // 1~5 2씩 증가
System.out.println(i);
}
for (int i = 5; i >= 1 ; i=i-2) { // 5~1 2씩 감소
System.out.println(i);
}
while문
- Java 와 동일하다.
// 3. while 문
var i = 1
while(i <= 3){
println(i)
i++
}
Reference
'Program > Kotlin' 카테고리의 다른 글
[Kotlin] 8. 함수 (선언 방법, default parameter, named parameter, vararg) (1) | 2022.10.04 |
---|---|
[Kotlin] 7. 예외 처리 (try-catch, unchecked Exception, try with resources, use) (0) | 2022.09.27 |
[Kotlin] 5. 조건문(if, switch, when) (0) | 2022.09.13 |
[Kotlin] 4. 연산자 (단항연산자, 산술연산자, 비교연산자, 논리연산자, 동등성, 동일성, 연산자 오버로딩) (0) | 2022.09.13 |
[Kotlin] 3. Type (기본타입, 타입캐스팅, Any, Unit,Nothing, trimIndent) (1) | 2022.09.11 |