코틀린 변수 선언과 null safety 개념 정리

코틀린의 변수 선언과 null 안전성 이해하기

코틀린(Kotlin)은 현대 프로그래밍 언어로, 자바와의 호환성 덕분에 안드로이드 개발에서 널리 사용됩니다. 그러므로 코틀린의 기본 개념을 이해하는 것은 중요합니다. 이 글에서는 코틀린의 변수 선언, 데이터 타입, 및 null 안전성(null safety)에 대해 자세히 살펴보겠습니다.

변수 선언의 기본 이해

코틀린에서 변수를 선언할 때는 크게 두 가지 키워드를 사용합니다: valvar. 각각의 역할은 다음과 같습니다.

  • val: 변수의 값을 변경할 수 없는 불변 변수입니다. 자바의 final과 유사하거나, C언어의 const와 비슷합니다.
  • var: 값이 가변적인 변수를 정의할 때 사용합니다. 필요한 경우 값의 변경이 가능합니다.

예를 들어, 아래와 같이 변수를 선언할 수 있습니다.

val name: String = "홍길동" // 불변 변수
var age: Int = 25 // 가변 변수

변수의 타입과 타입 추론

코틀린은 정적 타입 언어이지만, 변수의 타입을 선언할 필요가 없는 경우가 많습니다. 이는 코틀린의 타입 추론 기능 덕분입니다. 예를 들어, 변수 선언 시 아래와 같이 타입을 명시하지 않고도 사용할 수 있습니다.

var city = "서울" // 타입은 String으로 자동 추론됨

물론 필요에 따라 타입을 명시적으로 적어줄 수 있습니다.

val salary: Double = 75000.00

null 안전성의 중요성

코틀린에서 가장 주목할 만한 특징 중 하나는 null 안전성입니다. 자바와 달리, 코틀린은 데이터 타입이 null을 허용하는지 여부를 명확히 구분합니다. 기본적으로 모든 변수는 null을 허용하지 않습니다. 만약 null 값을 허용해야 한다면, 타입 뒤에 ?를 추가해야 합니다.

var nullableString: String? = null // null 허용
var nonNullableString: String = "안녕하세요" // null 불가

이러한 구조는 NullPointerException을 방지하는 데 큰 도움이 됩니다. 예를 들어, 안전한 호출(safe call) 연산자인 ?.를 사용하면, null인 경우에도 프로그램이 중단되지 않도록 처리할 수 있습니다.

val length = nullableString?.length // nullableString이 null이라면 length는 null이 된다.

코틀린의 기본 문법과 함수 정의하기

코틀린은 간결하고 명확한 문법을 제공합니다. 함수는 fun 키워드를 사용하여 정의하며, 반환 타입을 지정할 수 있습니다.

fun sum(a: Int, b: Int): Int {
  return a + b
}

함수를 더 간단히 정의할 수도 있습니다. 다음과 같이 한 줄로 표현할 수 있습니다.

fun multiply(a: Int, b: Int) = a * b

조건문과 반복문 활용하기

코틀린의 조건문은 자바와 유사하지만, 더 간결한 문법을 제공합니다. 기본적인 if 문은 아래와 같이 사용됩니다.

val score = 85
if (score >= 90) {
  println("A 학점")
} else if (score >= 80) {
  println("B 학점")
} else {
  println("C 학점")
}

또한, when 문을 통해 복잡한 조건식을 더 쉽게 처리할 수 있습니다.

when (score) {
  in 90..100 -> println("A")
  in 80..89 -> println("B")
  else -> println("C")
}

루프(반복문)의 활용

코틀린에서는 forwhile 문을 통해 반복 작업을 수행할 수 있습니다. for 문의 예시는 다음과 같습니다.

for (i in 1..5) {
  println(i) // 1부터 5까지 출력
}

그리고 while 문도 사용해서 지속적으로 조건을 확인할 수 있습니다.

var cnt = 0
while (cnt < 5) {
  println(cnt)
  cnt++
}

결론

코틀린의 변수 선언 및 null 안전성과 같은 기본적인 문법은 매우 직관적이며 이해하기 쉽습니다. 이러한 특성 덕분에 개발자들은 보다 안정적이고 간결한 코드를 작성할 수 있습니다. 앞으로 코틀린을 배우고 활용하면서 이러한 기본 개념들을 꼭 기억하시기 바랍니다. 프로그래밍의 기초를 다지고, 이를 바탕으로 다양한 기능들을 익혀 나가시면 좋은 결과를 얻을 수 있을 것입니다.

자주 묻는 질문 FAQ

코틀린에서 변수를 어떻게 선언하나요?

코틀린에서는 변수를 선언할 때 valvar 키워드를 사용합니다. val은 불변 변수를, var는 가변 변수를 정의하는 데 쓰입니다.

코틀린의 null 안전성은 무엇인가요?

코틀린에서는 모든 변수의 기본값이 null을 허용하지 않습니다. 만약 null을 지원해야 한다면, 타입 뒤에 ?를 추가해야 합니다.

함수를 어떻게 정의하나요?

코틀린에서 함수는 fun 키워드를 사용하여 정의하며, 반환값의 타입을 명시할 수 있습니다. 간단하게 한 줄로 표현도 가능합니다.

답글 남기기