티스토리 뷰
728x90
변수 선언방식
- val / var
방식 | 타입 |
val (value) | 불변 (자바의 final과 같음) |
var (variable) | 가변 |
val test ="hello"
test = "world" // error
var test1 = "hello"
test1 = "world" // ok
기본 타입
- 자바와 코틀린의 큰 차이점중 하나는 코틀린의 경우 모든것이 객체임.
- 이로인해 자바와는 다르게 원시 타입이 없음.
- 실제로 없는게 아니라 코틀린이 자동으로 원시 타입을 쓸건지 래퍼 클래스를 쓸건지 결정한다.
숫자
타입 | 길이 | 비교 |
Long | 64 | |
Int | 32 | 정수 체계의 기본값 |
Short | 16 | |
Byte | 8 | |
Double | 64 | 부동소수점 수 체계 기본값 |
Float | 32 |
val int = 123
val long = 123456L
val double = 1234
val float = 12.34F
- 코틀린은 자동으로 값을 확장하지 않으므로 명시적으로 변환해야함.
- 자바의 경우 자동으로 형변환 해줌.
코틀린
val otherInt = 123
val otherLong = otherInt
println(otherLong.javaClass.kotlin.qualifiedName) // kotlin.Int
val otherLong2 = 123.toLong()
println(otherLong2.javaClass.kotlin.qualifiedName) // kotlin.Long
자바
public class Variable {
public static void main(String[] args) {
int otherInt = 123;
long otherLong = otherInt;
System.out.println(((Object)otherLong).getClass().getName()); // java.lang.Long
}
}
불리언
- 논리곱과 논리합은 느슨하게 평가되어 왼쪽에서 조건을 만족시 오른쪽은 평가하지 않는다.
val boolean = 1 < 2
문자 및 문자열
문자
- 단일 문자를 나타낸다.
- 문자 리터럴은 ` 와 같은 단일 따옴표를 사용한다.
- 자바에서처럼 숫자로 다뤄지지 않는다.
코틀린
val char = 'A'
val char2: Char = 12 // Error!
자바
char a = 12; // OK!
문자열
- 자바와 같이 불변으로 생성됨.
- 이중 따옴표 또는 삼중 따옴표로 생성됨.
종류 | 내용 |
이중 따옴표 |
이스케이프된 문자열 생성 개행과 같은 특수문자는 반드시 이스케이프되야함. |
삼중 따옴표 |
원시 문자열 생성 이스케이프가 필요치 않으며 모든 문자 포함 가능 작성한 그대로 출력된다고 생각하면 된다. |
이중 따옴표
val twoQuote = "Hello\nKotlin"
[결과]
Hello
Kotlin
삼중 따옴표
val threeQuote = """Hello\nKotlin
HiHI
"""
[결과]
Hello\nKotlin
HiHI
문자열 템플릿
- 표현식과 문자열 리터럴을 혼합하기 위해 손쉬운 방법을 제공
- 접두사로
$
기호를 사용하며 표현식의 경우${표현식}
으로 사용한다.
val hello = "Hello"
val kotlin = "kotlin"
println("$hello ${kotlin.toUpperCase()}") // Hello KOTLIN
참조 사이트
728x90
'개발 언어 > 코틀린' 카테고리의 다른 글
코틀린(Kotlin) | 범위 표현식 (0) | 2019.06.21 |
---|---|
코틀린(Kotlin) | 분기문 (if, when) (0) | 2019.06.21 |
코틀린(Kotlin) | 동등성 vs 동일성 (0) | 2019.06.21 |
코틀린(Kotlin) | Kotlin (0) | 2019.06.21 |
코틀린(Kotlin) | 공부하게 된 이유 (0) | 2019.06.21 |
댓글