반응형
22년 1월 26일 백지 상태로 코틀린 독학 시작...화이팅...😁
코틀린(Kotlin)
- 코틀린이란?
젯브레인(JetBrains)에서 만든 언어, 2016년 2월 정식 버전이 출시되었고 구글 I/O 2017에서 안드로이드의 공식 지원 언어로 채택되었음.
- 코틀린 장점
-자바 코드와 상호 운용
-코드가 간결하다.
-대부분의 자바 프로젝트에서 코틀린 활용 가능
-안정성 (null 체크, 타입 검사와 캐스트)
코틀린 기본 문법
🔎기본문법 1.함수
- int가 아닌 Int로 표시한다.
- 변수명을 타입보다 먼저 써준다.
- 아무 리턴값이 없을 때에는 Unit으로 표시하고 생략 가능하다.
🔎기본문법 2.var / val
- val : 변할 수 없는 상수(=final)
- var : 일반적인 변수(변경 가능)
- 코틀린은 ;를 사용하지 않고 변수 타입을 따로 지정하지 않아도 변수 값에 따라 자동으로
- 변수 타입이 지정된다.
->a는 변할 수 없는 val로 선언했기 때문에 다른 값을 넣으면 에러가 발생한다.
🔎기본문법 3.String 탬플릿★
- 문장 내 일부 단어만 상황에 따라 치환이 필요할 때 사용함
- 문장 내에 인자를 $를 사용하여 직접 대입
- 띄어쓰기 없이 $를 선언할 때에는 ${ } 표시로 구분지어줘야 하지만,
- 띄어쓰기 할 때에도 $를 함께 사용하는 습관이 헷갈리지 않고 좋다.
🔎기본문법 4.조건식
- if~else문
- 두 번째 함수는 a>b 조건문이 true일 때 a를, 그렇지 않으면 b를 출력하라는 의미이다.
- when문 : 세 번째 함수와 같은 상황에서는 else를 생략할 수 있지만
- when이 return값으로 쓰일 때에는 생략 불가.
🔎기본문법 6.Nullable/NonNull (자바와 가장 큰 차이점, 코틀린의 대표적인 특징)
- 자바에서는 NPE(Null Point Exception)으로 고생하는 일이 많았지만...
- 코틀린은 자바보다 null처리를 명확하게 하는 것이 가장 큰 특징이다!
?
- type에 ?을 붙이며 null이 가능한 변수라고 명시적으로 표현할 수 있다.
- 위 예제에서 var nulName : String = null 이렇게만 적었다면 컴파일 에러가 발생한다.
?.
- 맨마지막줄에 선언한 ?. 연산자는 앞의 변수가 null이 아닐 때에만 오른쪽 함수를 실행하고 null이면 null을 반환한다는 의미이다.
- ->자바에서는 if(name != null)~~ 길게 적어야 했던 코드가 ?. 하나로 매우 간결해진다.
?: (Elvis operator)
- 실제로 엘비스 프레슬리 머리스타일이랑 비슷해서 붙여진 이름이라고 함ㅋㅋ
- null일 경우 default 값을 줄 때 사용한다.
!!
- 하늘이 두쪽나도 강제로 null이 아니라고 선언할 때 사용
- 만약 null이면 컴파일 에러가 발생하기 때문에 정말 확실하게 null이 아닐 때만 사용해야 한다.
let 함수
- not null인 경우에만 지정된 구문을 실행해주고 싶을 때 let을 사용할 수 있다.
- 자신의 receiver 객체를 람다식으로 넘겨주고 let 함수에서는 it 으로 받아서 표현한다.
- email?.let{email -> sendEmailTo(email)} 과 같은 의미이다.
반응형
'💻 my code archive > 🎈Kotlin' 카테고리의 다른 글
Kotlin 공부 기록(6) - 심리테스트 앱 만들기 (Fragment, Navigation 사용) (0) | 2022.02.06 |
---|---|
Kotlin 공부 기록(5) - 안드로이드 레이아웃(layout) 종류 (0) | 2022.02.06 |
Kotlin 공부 기록(4) - 데이터 클래스, companion object, object 싱글톤 패턴 (0) | 2022.02.01 |
Kotlin 공부 기록(3) - 람다식(람다 표현식), 확장함수, return (0) | 2022.02.01 |
Kotlin 공부 기록(2) - 클래스, 생성자, 상속 (0) | 2022.01.27 |