728x90

코틀린 기본 문법정리

2강에서 build.gradle 앱수준에서

plugins부분에 id 'kotlin-android-extensions' 을 추가하였다

목차 

 

1. 자료형,변수,값 선언

2. 리스트

3. 흐름제어(when , for)

4. 함수정의

5. 클래스,함수 정의

6. 상속

7. 람다식

 

코틀린은 값의 변경여부를 중요하게 생각합니다.

그래서 항상 변수를 선언할때 이변수가 변경가능한 변수인지, 변경이 불가능한 변수인지 키워드를 통해 정의합니다.

 

val : 변경 불가능한 값

var : 변경 가능한 값 

 

fun main(){
    var a:Int = 10
    val b:Int = 20
    a = 20
    b = 40 // b는 val(변경불가능한상수)로 정의했기때문에 값을변경할수없음 오류
}

 

Nullable

 

코틀린은 변경가능한 변수인지도 중요하게 여기지만, 해당 변수가 null값이 들어갈수 있는지 아닌지 또한 중요하게 여기고있습니다. 

 

 

 

<코드설명>

9: c는 변경이 가능한 Int형변수로 3으로 초기화해줌

10: c에 null값을 넣었지만 c는 null값이 들어갈수없는 변수이므로 에러

11. d는 변경이 가능한 Int형변수로 4로 초기화해주며 null값이 들어갈수있음

12. d에 null값을 넣어줌

 

 

LIST

 

코틀린에서의 리스트는 크게 두가지로 나눌수있습니다

1. List<>와 

2. MutableList<>

 

List의 경우 값을 변경 삭제  추가가 되지않습니다.

반면 MutableList의 경우 배열의 요소를 변경, 추가 , 삭제가 가능합니다.

 

 

흐름제어(반복문 for , when)

 

for

 

 

when

 

자바에서의 switch문과 비슷하지만 아주 조금 다르다

default대신 else를 사용하며 , ->를 사용하며 in 6..15등을 사용한다(6~15)

 

 

문자열 템플릿

  • + : 문자열 붙이기
  • ``$변수명,${변수명}` : 문자열 중간에 변수가 들어가야 할 경우

val str1 = "안녕" val str2 = "하세요" println(str1+str2) // 안녕하세요

 

 

배열

  • arrayOf()
  • 배열의 생성과 초기화를 함께 수행 / 컴파일러가 자료형을 유추할 수 있을 때는 이를 생략!
  • 배열의 요소에 접근하려면 [] 대괄호에 인덱스적으면 됨

배열,리스트 선언시 <>안에 특정 자료형을 넣어서 정의했을경우 그배열은 그 자료형값만 들어갈수있음

 

함수정의

 

코틀린에서는 함수를 정의할때 fun 키워드를 사용합니다.

 

728x90

+ Recent posts