모든 언어에서 무조건 사용이 되는 반복문과 조건문을 코틀린에서는 어떻게 사용하는지, 또 다른 언어와의 차이점이 있는지 확인해보자.

 

  • 반복문
    • 특정 로직을 반복적으로 작성해야 할 때 주로 사용된다.
    • 간단한 while문 먼저 살펴보자.
      • var cnt: Int = 0
        while(cnt <= 10) {
        	cnt++
        }
        
        do{
        	cnt++
        } while(cnt <= 20)
      • while과 do-while로 사용할 수 있는데 do-while의 경우 먼저 실행 후 while(조건)을 확인한다는 특징이 있다.
    • 코틀린에서는 for문의 사용방법이 매우 다양하다. 필요에 따라 알맞게 사용하면 될 듯하다.
      • val size: Int = 10
        
        for(i: Int in 1..10)
        for(i: Int in i..size)
        for(i: Int in 1 until size + 1)
        • 위의 for문은 모두 1~10까지 반복하게 된다. (until의 경우 우측의 값 전까지 반복하게 된다.)
      • for(i: Int in 1..10 step(2))
        • step키워드를 통해서 2씩 증가시킬 수 있다.(i 에는 1, 3, 5, 7, 9가 차례대로 할당됨)
      • for(i: Int in 10 downTo 1)
        for(i: Int in 10 downTo 1 step(2))
        • downTo를 사용하면 좌측의 값부터 우측의 값까지 1씩 감소하면서 i에 할당된다.
        • step을 사용할 경우 step의 값만큼 빼면서 할당한다.(10, 8, 6, 4, 2)
      • val array: IntArray = intArraysOf(1, 2, 3, 4, 5)
        
        for(i: Int in array)
        • for문을 제일 많이 사용하는 배열의 경우 in을 통해 넣어주면 하나씩 꺼내서 할당해 준다.
        • 자바의 향상된 for문 혹은 자바스크립트의 for-in을 생각하면 좋다.
    • 파이썬, 자바스크립트와 같은 동적 언어를 많이 다뤄봤다면 매우 익숙한 문법이겠지만 자바와 같은 동적 언어로 프로그래밍에 입문을 했다면 다소 불편할 수도 있지만 적응하면 잘 사용할 수 있다고 생각한다.
  • 조건문
    • if(true)
      else if(false)
      else
      • 일반적으로 많이 사용하는 조건문이다. 코틀린에서도 동일하게 사용이 가능하다.
    • val foo: String = when(value) {
      	1..5 -> {"hello"}
          10 -> {"hi"}
          else -> {"bye"}
      }
      • 다른 언어가 가지고 있는 switch case문과 매우 유사하지만 {}를 통해 범위를 제어하기 때문에 break가 필요하지 않다.
      • 또한 결과를 바로 리턴 받아 사용이 가능하다.

 

'Back-end > Kotlin' 카테고리의 다른 글

2. 변수  (0) 2022.01.27
1. 코틀린이란?  (0) 2022.01.21

코틀린에서는 자바보다는 자바스크립트와 비슷하게 변수를 사용한다.(더 자세하게는 타입 스크립트와 닮은 듯하다)

변수를 선언할 때는 크게 두 가지를 사용할 수 있다.

  • val
    • 자바스크립트의 const를 생각하면 이해하기 쉽다.
    • 자바에서는 final. 즉, 상수를 생각하면 된다.
    • 재할당이 불가능하다.
  • var
    • 자바스크립트의 let을 생각하면 이해하기 쉽다.
    • 자바에서는 일반 변수를 생각하면 된다.
    • 재할당이 가능하다.

 

  • 사용 방법
    • val a: String = "hello"
      var a: String = "hello"
    • 제일 기본적으로 변수를 선언하는 방법이며 val의 경우 재할당은 불가능하다.
    • 타입은 값을 할당했을 경우에는 생략이 가능하다.
    • val a = "hello"
      var a = "hello"
    • 할당된 값을 코틀린이 확인 후 자동으로 타입을 매치해주기 때문에 위의 경우는 가능하지만 값을 처음에 입력하지 않는 경우에는 불가능하다.
    • var a: String? = null
      a = "hello"
    • null은 다음 포스팅에서 설명...

'Back-end > Kotlin' 카테고리의 다른 글

3. 반복문과 조건문  (0) 2022.01.28
1. 코틀린이란?  (0) 2022.01.21
  • 탄생 배경
    • 2011년 7월 Intellij를 만든 JetBrains사에서 JVM위에서 작동하는 크로스 플랫폼 오픈소스 프로그래밍 언어를 공개했다.
    • 파일의 확장자는. kt 혹은. kts를 사용한다.
    • 스칼라를 제외한 대부분의 언어들에는 몇몇 기능이 없었고, 스칼라에는 느린 컴파일 시간이 단점으로 있었다.
    • 코틀린의 이름은 러시아의 섬 중 하나인 코틀린 섬에서 따왔다.
  • 장점
    • 자바와 같은 환경에서 개발이 가능하다.
    • 객체지향이면서 동시에 함수형 프로그래밍이 가능하다.
    • 널처리가 안정적이다.
    • 동시성 프로그래밍
  • 단점
    • 자바에비해 컴파일 속도가 상대적으로 느리다.
    • 학습 생태계가 작다.(정보를 얻을 수 있는 커뮤니티 등이 부족하다.)
    • 자바의 기존 라이브러리 활용이 어려울 수 있다.

'Back-end > Kotlin' 카테고리의 다른 글

3. 반복문과 조건문  (0) 2022.01.28
2. 변수  (0) 2022.01.27

+ Recent posts