<자바 코드>
List<Long> numbers = Arrays.asList(1L, 2L, 3L);
for (long number : numbers) {
System.out.println(number);
}
<코틀린 코드>
fun main() {
val numbers = listOf(1L, 2L, 3L) //컬렉션을 만드는 법이 다름.
for(number in numbers) { // : 대신 in을 사용함. Java와 동일하게 Iterable이 구현된 타입이라면 모두 들어갈 수 있다.
println(number)
}
}
<자바 코드>
for (int i = 1; i <= 3; i++) {
System.out.println(i);
}
<코틀린 코드>
for (i in 1..3) { //1..3은 1부터 3까지라는 의미이다.
println(i)
}
<자바 코드>
for (int i = 3; i >= 1; i--) {
System.out.println(i);
}
<코틀린 코드>
for (i in 3 downTo 1) {
println(i)
}
<자바 코드>
for (int i = 1; i <= 5; i+=2) {
System.out.println(i);
}
<코틀린 코드>
for (i in 1..5 step 2) {
System.out.println(i)
}
1..3 : 1부터 3의 범위
IntRange → IngProgression
Progression = 등차수열 :
시작 값
끝 값
공차 (몇 칸씩 뛸지)
=> 사실은 등차수열을 만들어주고 있던 것!!
3 downTo 1 : 시작값3, 끝값1, 공차가 -1일 등차수열
1..5 step 2 : 시작값1, 끝값5, 공차가 2인 등차수열
downTo, step 도 함수이다! (중위 호출 함수)
변수.함수이름(argument) 대신 변수 함수이름 argument
1..5 step 2 : 1부터 5까지 공차가 1인 등차수열 생성, 1~5, 공차 1 등차수열 step2
int i = 1;
while (i <= 3) {
System.out.println(i);
i++;
}
var i = 1
while (i <= 3) {
println(i)
i++
}