디모의 Kotlin 강좌
https://www.youtube.com/watch?v=8RIsukgeUVw&list=PLQdnHjXZyYadiw5aV3p6DwUdXV2bZuhlN&index=1
- 코틀린의 시작
- 변수와 자료형
2. 변수와 자료형
주석
// 한 줄
/* 주석
여러줄 */
세미콜론 필요 없음.
클래스 이름은 파스칼 표기법
모든 단어를 대문자로 시작
ClassName
함수나 변수 이름은 카멜 표기법
첫 단어만 소문자로 시작
functionName
변수 선언
var
인반적인 변수
언제든지 읽기 쓰기가 가능함
val
선언시에만 초기화 가능
중간에 값을 변경할 수 없음
클래스에 선언된 변수
Property (속성)
이 외의 Scope 내에 선언된 변수
Local Variable (로컬 변수)
warning
불필요한 구문이 있거나 잠재적 문제가 있을 수 있음
error
구문상에 심각한 문제가 생겨
컴파일 자체가 불가능한 상태
코틀린은 기본 변수에서 null 을 허용하지 않으며
변수에 값을 할당하지 않은채로 사용하게 되면 문법 에러를 표시하고 컴파일을 막으므로 의도치 않은 동작이나
null pointer exception 등을 원천적으로 차단해 준다는 장점이 있다.
정수형
Byte 8bits
Short 16bits
Int 32bits
Long 64bits
실수형
Float 32bits
Double 64bits
정수형의 리터럴
* 리터럴 : 코드 내에 값을 표기하는 것
var intValue:Int = 1234 // Int
var longValue:Long = 1234L // Long
var intValueByHex:Int = 0x1af // 16진수
var intValueByBin:Int = 0b10110110 // 2진수
8진수는 지원하지 않는다.
실수의 경우 기본이 Double 형
var doubleValue:Double = 123.5
var doubleValueWithExp:Double = 1235e10 // 지수 표기법
var floatValue:Float = 123.5f
문자열
유티코드 인코딩 중에 한 방식인
UTF-16 BE
글자 하나당 2bytes 의 메모리 공간을 차지
Char의 리터럴
var charValue:Char = ‘a’
var koreanCharValue:Char = ‘가’
\t 탭
\b 백스페이스
\r 첫 열로 커서 옮김
\n 개행
\’ 작은 따옴표
\” 큰 따옴표
\\ 역 슬래시
\$ $ 문자
\uxxxx 유니코드 문자
Boolean
true, false 둘 중에 하나
var booleanValue:Boolean = true
문자열
val stringValue = “one line string test”
var multiLineStringValue = “””multiline
string
test “”””” // 여러줄의 문자열