ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Kotlin] 코틀린 기초 - 함수, 변수
    Computer Science/Kotlin 2021. 1. 17. 00:55

    함수와 변수

    • 함수를 선언할 때 fun 키워드를 사용함
    • 파라미터 이름 뒤에 그 파라미터의 타입을 작성
    • 함수를 최상위 수준에 정의할 수 있음, 꼭 클래스 안에 함수를 넣을 필요가 없음
    • 배열도 일반적인 클래스와 똑같음. 자바처럼 배열처리를 위한 문법이 따로 존재하지 않음
    • System.out.println 대신에 println이라고 쓴다
    • 세미콜론(;)을 붙이지 않아도 된다

    함수

    • 함수의 반환 타입은 파라미터 목록의 닫는 괄호 다음에 위치, :로 구분해야 한다
    • 코틀린에서 if는 결과를 만드는 식이다.

    식이 본문인 함수

    • 함수 본문이 if식 하나로만 이루어져 있는 경우, 중괄호를 없애고, return을 제거하고 =를 식 앞에 붙이면 간결하게 함수를 표현할 수 있음.

    • 식이 본문인 함수에서는 사용자가 반환 타입을 적지 않아도 컴파일러가 타입을 추론하여 실행시켜 준다

    변수

    • 코틀린에서는 키워드로 변수 선언을 시작하는 대신 변수 이름 뒤에 타입을 명시하거나 생략하게 허용한다

    • 초기화 식을 사용하지 않고 변수를 선언하려면 변수 타입을 반드시 명시해야 함

    변경 가능한 변수와 변경 불가능한 변수

    • val : 변경 불가능한 참조를 저장하는 변수, 자바의 final
    • var : 변경 가능한 참조, 자바의 일반 변수

    • val로 선언한 변수 answer1은 값을 변경하려 하자 에러가 발생
    • 기본적으로 모든 변수를 val 키워드를 사용해 불변 변수로 선언하고, 나중에 필요할 때만 var로 변경하는 것이 좋다

    • val 참조 자체는 불변이지만, 그 참조가 가리키는 객체 내부의 값은 변경될 수 있다.
    • var 키워드를 사용하면 변수의 값은 변경할 수 있지만, 변수의 타입은 고정되어 바뀌지 않는다

    • Int 타입 answer에 문자열을 대입하려 해서 에러 발생

    문자열 템플릿

    • 여러 스크립트 언어들처럼 코틀린에서도 변수를 문자열 안에서 사용 가능
    • $ 뒤에 변수명을 넣어서 사용함
    • 존재하지 않는 변수를 문자열 템플릿 안에서 사용하면 컴파일 오류가 발생함

    • 변수명이 아닌 복잡한 식을 넣으려면 중괄호({})로 둘러싸서 넣을 수 있음
    • 왠만하면 {}를 붙이는 습관을 들이는게 좋다, 가독성도 그렇고 한글 관련 에러도 있기 때문

    댓글

Designed by Tistory.